所以如果我定义一些常量
const byte MAX_SIZE = 100;
然后实例化一个静态大小
的整数数组int[] myArr = new int[MAX_SIZE];
静态大小是明确强制还是完全可以接受。
只是好奇,因为我在VS Visual C#2013中没有收到任何警告,或者有没有办法让警告更加严格?
答案 0 :(得分:4)
值将隐式转换为为int。请参阅c#规范。
7.6.10.4数组创建表达式
... new non-array-type [expression-list] ...
表达式列表中的每个表达式必须是int,uint,long或ulong类型,或者可以隐式转换为这些类型中的一个或多个。
...在评估每个表达式之后,执行对以下类型之一的隐式转换(第6.1节):int,uint,long,ulong。选择此列表中存在隐式转换的第一种类型。