下面是几句简单的数组定义和初始化语句,有的编译成功有的失败,不知道原因,请高手指点。
int[] pins = { 9, 3, 7, 2 };
编译成功;
int[] pins;
pins = { 9, 3, 7, 2 };
编译失败;
int[] pins;
pins = new(){ 9, 3, 7, 2 };
编译成功;
int arraySize = 4;
int[] pins = new int[arraySize];
编译成功;
int arraySize = 4;
int[] pins = new int[arraySize]{ 9, 3, 7, 2 };
编译错误,提示应输入常量;
const int arraySize = 4;
int[] pins = new int[arraySize]{ 9, 3, 7, 2 };
编译成功;
int[] pins = { 9, 3, 7, 2 };
编译成功;
int[] pins;
pins = { 9, 3, 7, 2 };
编译失败;
int[] pins;
pins = new(){ 9, 3, 7, 2 };
编译成功;
int arraySize = 4;
int[] pins = new int[arraySize];
编译成功;
int arraySize = 4;
int[] pins = new int[arraySize]{ 9, 3, 7, 2 };
编译错误,提示应输入常量;
const int arraySize = 4;
int[] pins = new int[arraySize]{ 9, 3, 7, 2 };
编译成功;
编译成功; //大括号中的初值的个数决定
int[] pins; //利用这种直接赋值的方法进行数组的初始化的工作的时候,
pins = { 9, 3, 7, 2 }; //两条语句不能分开!
编译失败;
int[] pins;
pins = new(){ 9, 3, 7, 2 };
编译成功;
int arraySize = 4;
int[] pins = new int[arraySize];
编译成功;
int arraySize = 4;
int[] pins = new int[arraySize]{ 9, 3, 7, 2 }; //利用该种方法时,长度要明确指出
编译错误,提示应输入常量;
const int arraySize = 4;
int[] pins = new int[arraySize]{ 9, 3, 7, 2 };
编译成功;
不是本质的东西,只是语法。