2012-01-04 43 views
3

我可以在我的項目中看到這個運算符| =在一些示例代碼中使用。下面給出確切代碼運算符| =在C#中的含義是什麼?

DocumentRetrievalOptions docRetrievalOptions = DocumentRetrievalOptions.ByTargetJurisdiction;  
    docRetrievalOptions |= DocumentRetrievalOptions.ByUniqueId; 

其中'DocumentRetrievalOptions'是枚舉類型。

這會有很大的幫助,如果有人讓我知道,這是什麼意思。

回答

6

這是一個Bitwise/Logical OR - 賦值運算符。 A |= B;相同A = A | B;

由於DocumentRetrievalOptionsenum,你的情況|=執行按位操作。

0

它將*按位或*運算符(|)應用於兩個操作數並將結果存儲在docRetrievalOptions中。

它是相同的docRetrievalOptions = docRetievalOptions | DocumentRetrievalOptions.ByUniqueId;

它解釋枚舉爲int然後執行該操作。

1

這是一條捷徑:

docRetrievalOptions = docRetrievalOptions | DocumentRetrievalOptions.ByUniqueId; 

|是按位或運算。通過這種方式,它的作用類似於+=,-=和其他這種風格的操作符。

1

通常枚舉中的值用作標誌,| =或「或等於」運算符只是取這些值的位表示並對它們執行按位或運算。這樣你可以「啓用」枚舉的另一個特徵或標誌(在這種情況下,文檔的檢索選項可以是目標選舉或者唯一標識)。

相關問題