編譯器錯誤 CS1059
更新:2007 年 11 月
錯誤訊息
遞增或遞減運算子的運算元必須是變數、屬性或索引子。
嘗試遞增或遞減常數值時,會引發這個錯誤。如果嘗試遞增運算式 (如 (a+b)++),則也會發生這個錯誤。
若要更正這個錯誤
讓變數成為非常數。
移除遞增或遞減運算子。
將運算式儲存在變數中,然後遞增該變數。
範例
因為 i 是常數而非變數,而 E 是 Enum 型別 (其項目也是常數值),所以下列範例會產生 CS1059。
// CS1059.cs
class Program
{
public enum E : sbyte
{
a = 1,
b = 2
}
static void Main(string[] args)
{
const int i = 0;
i++; // CS1059
E test = E.a++; // CS1059
}
}