首页 新闻 搜索 专区 学院

c#这样写为什么不会报错?我记得定义数组的时候必须要指定大小的

0
悬赏园豆:10 [已关闭问题] 关闭于 2016-09-26 16:11

         string [] aa=new string[]{"fsaf","bbbb"}; 长度为2
            aa = new string[] { "fsaf", "cccc","bbbb" }; 长度为3了 

雪原日暮的主页 雪原日暮 | 初学一级 | 园豆:200
提问于:2016-09-22 11:42
< >
分享
所有回答(4)
0

这个东西叫:对象初始化器,语法糖,有地方帮你做了而已,正常是需要指定长度的。

就好像,你平时定义一个事件,正常是要先定义委托,然后定义事件,你直接定义事件,就是vs帮你生成了一个委托。。。

顾晓北 | 园豆:10792 (专家六级) | 2016-09-22 11:45
0

1、你记错了或者那只是过去的某个版本

2、人家修改了编译器,错误就变成正确的了

3、世界一直在变化

爱编程的大叔 | 园豆:30753 (高人七级) | 2016-09-22 12:19
0

{}赋值了相当于申明了长度

神牛003 | 园豆:313 (菜鸟二级) | 2016-09-22 12:28
0

你这c#学的啥子,我去,使用[]声明长度,使用{}是先声明长度在进行赋值,如果使用了[5]声明了长度,,,又用了{}赋值,则{}里面数据长度必须与[]指定的相同,,,,,,,,,,使用{}赋值是.net做的,是对象初始化器,一种语法糖,自动生成一个数组,计算长度,然后赋值,,然后在给你的变量,

 

小小鱼、 | 园豆:202 (菜鸟二级) | 2016-09-28 10:35
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册