這個問題可能有些挑剔,但我真的需要明白這一點。編譯器錯誤CS0201
我有以下代碼:
string.Equals("0", "1"); //returns false, does compile
和
int i = 1;
i == 0; //should return false, does not compile
第二部分拋出異常
只有分配,調用,遞增,遞減和新的對象表達可作爲聲明使用
如documented,至少一個分配(=
),方法調用()
,new
,--
或++
操作必須被調用。
問題:這是不是意味着==
不是一種方法?
您不能將比較'i == 0;'作爲單個語句。如果您試圖將變量聲明爲if塊的唯一語句,例如'if(true){int i = 0}' –
==確實不是一種方法,它是一個運算符 – nbokmans
'=='是*運算符*。它可以通過自定義類型的方法來支持*,但編譯器可以在知道涉及的類型時自由地編譯專用代碼。 –