gpt4 book ai didi

c# - 隐式类型数组 : why we can't set array size explicitly?

转载 作者:可可西里 更新时间:2023-11-01 08:13:01 24 4
gpt4 key购买 nike

C# 语言规范 (7.6.10.4) 说,数组创建表达式有树种:

new non-array-type [ expression-list ] rank-specifiersopt array-initializeropt
new array-type array-initializer
new rank-specifier array-initializer

第三个用于隐式类型数组:

var foo = new[] { 1, 2, 3 };

问题:在隐式类型数组的情况下,是否有任何重要的理由禁止显式设置数组大小?

与这种语法相比,它看起来像是不对称行为:

var foo = new int[3] { 1, 2, 3 };

更新

稍微澄清一下。我可以看到,显式设置数组大小和数组初始值设定项组合的唯一优势是编译时检查初始值设定项长度。如果我声明了三个 int 的数组,则初始化程序必须包含三个 int

我认为,隐式类型数组也有同样的优势。当然,使用与否是个人喜好。

最佳答案

关于c# - 隐式类型数组 : why we can't set array size explicitly?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14597522/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com