相关疑难解决方法(0)

CS0133"分配给'标识符'的表达式必须是常量" - 这背后的原因是什么?

有很多C++背景我已经习惯了写下面的内容:

const int count = ...; //some non-trivial stuff here
for( int i = 0; i < count; i++ ) {
   ...
}
Run Code Online (Sandbox Code Playgroud)

我希望在C#中也能正常工作.然而...

byte[] buffer = new byte[4];
const int count = buffer.Length;
Run Code Online (Sandbox Code Playgroud)

产生错误CS0133:分配给'count'的表达式必须是常量.

我不明白.为什么这个无效?int是一种价值类型,不是吗?为什么我不能这样分配值并使变量不可更改?

.net c#

22
推荐指数
3
解决办法
1万
查看次数

标签 统计

.net ×1

c# ×1