【发布时间】:2017-04-16 20:56:36
【问题描述】:
我在浏览英特尔深度学习框架 Caffe 的源代码时,偶然发现了|=。我以前从未在任何代码中看到过这种情况。事实上,我在代码中发现了两次。 Line 188:
need_backward |= blob_need_backward_[blob_id];
和line 254:
need_backward |= param_need_backward;
我意识到它们都位于一个 for 循环中,这可能表示某种关系。我只是假设。
【问题讨论】:
-
我投票结束这个问题,因为这是一个关于充分记录基本语法的问题。
-
Scroll down here "按位包含 OR 和赋值运算符"
-
|是按位或运算符。X op= Y是X = X op Y的简写。因此,|=对两个参数执行按位或并将结果分配给第一个参数。 -
我也不想让你气馁,或者实际上:我想 -- 我想知道你是否应该从更简单的事情开始。