编译器错误 C3891

“var”:literal 数据成员不能用作左值

literal 变量是常数,在声明中初始化后,无法更改其值。

以下示例生成 C3891:

// C3891.cpp
// compile with: /clr
ref struct Y1 {
   literal int staticConst = 9;
};

int main() {
   Y1::staticConst = 0;   // C3891
}