我可以在我的项目中的某些示例代码中看到此运算符使用。确切的代码如下所示
DocumentRetrievalOptions docRetrievalOptions = DocumentRetrievalOptions.ByTargetJurisdiction;
docRetrievalOptions |= DocumentRetrievalOptions.ByUniqueId;
其中'DocumentRetrievalOptions'的类型为枚举。
如果有人告诉我,这意味着什么,这将是非常有帮助的。
答案 0 :(得分:6)
这是Bitwise/Logical OR - assign运算符。 A |= B;
与A = A | B;
由于DocumentRetrievalOptions
是enum
,因此在您的情况下|=
执行按位操作。
答案 1 :(得分:1)
这是一个快捷方式:
docRetrievalOptions = docRetrievalOptions | DocumentRetrievalOptions.ByUniqueId;
|
是按位OR运算符。通过这种方式,它的工作方式类似于+=
,-=
以及此样式的其他运算符。
答案 2 :(得分:1)
通常,枚举中的值用作标志,| =或“或等于”运算符只是采用这些值的位表示,并对它们进行按位OR运算。这样,您“启用”枚举的另一个功能或标志(在这种情况下,文档的检索选项可以通过目标jursisdiction或唯一ID)。
答案 3 :(得分:1)
另请阅读:http://msdn.microsoft.com/en-us/library/system.flagsattribute.aspx 如果您希望以这种方式使用此运算符,这非常有用。
答案 4 :(得分:0)
它将* bitwise或*运算符(|
)应用于两个操作数,并将结果存储在docRetrievalOptions
中。
与docRetrievalOptions = docRetievalOptions | DocumentRetrievalOptions.ByUniqueId;
它将枚举解释为int,然后执行操作。