为什么我不能用逗号重新声明一个数组?
static void Main(string[] args)
{
short[] arr = new short[6] { 1,1,1,1,1,1 };
if(1)
{
arr = {1,0,0,1,1,0}; // this line doesn't work
}
}
答案 0 :(得分:7)
初始化表达式不是{1,0,0,1,1,0}
初始化表达式必须为new short[6] { 1,1,1,1,1,1 }
所以,基本上,你的问题陈述就是你问题的答案。
答案 1 :(得分:1)
此语法:short[] arr = {1, 0, 0, 1, 1, 0};
被称为数组初始化语法,它只适用于 声明
为什么?
正如那个人here写的那样,它是微软人员出于某种原因选择实施的方式。