Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/310.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#动态数组初始化[优势?]_C#_Arrays_Array Initialization - Fatal编程技术网

C#动态数组初始化[优势?]

C#动态数组初始化[优势?],c#,arrays,array-initialization,C#,Arrays,Array Initialization,我刚刚开始学习C#,并使用Tutorials Point来完成这项工作。在关于数组的部分中,我一直看到数组声明为 string[] sarray = { "Hello", "From", "Tutorials", "Point" }; 或者其他类似的时候: int [] marks = new int[5] { 99, 98, 92, 97, 95 }; 来自C++,第一种声明方法对我来说并不新鲜,但第二种方法是我不理解的。问题是,如果数组要进行动态初始化,那么为什么要使用括号内的初始值

我刚刚开始学习C#,并使用
Tutorials Point
来完成这项工作。在关于数组的部分中,我一直看到数组声明为

string[] sarray = { "Hello", "From", "Tutorials", "Point" };
或者其他类似的时候:

int [] marks = new int[5]  { 99,  98, 92, 97, 95 };
来自C++,第一种声明方法对我来说并不新鲜,但第二种方法是我不理解的。问题是,如果数组要进行动态初始化,那么为什么要使用括号内的初始值设定项列表来指定数组的内容


以这种方式初始化第二个有什么好处吗?

一点好处也没有。这是一种编码偏好

您甚至可以忽略尺寸部分,例如:

int[] marks = new int[] {99, 98, 92, 97, 95};

查看MSDN了解更多信息:

完全没有优势。这是一种编码偏好

您甚至可以忽略尺寸部分,例如:

int[] marks = new int[] {99, 98, 92, 97, 95};

查看MSDN了解更多信息:

第一条语句与

string[] sarray = new string[5] { "Hello", ... };
除了个人喜好,一种风格比另一种没有优势。我倾向于把第二句话写成

var marks = new [] { 99, 98, ... };

第一条语句与

string[] sarray = new string[5] { "Hello", ... };
除了个人喜好,一种风格比另一种没有优势。我倾向于把第二句话写成

var marks = new [] { 99, 98, ... };

第一个和第二个示例之间的差异可能重复的是语法。有几种样式可以初始化数组。我建议使用A,因为它的行为更像C++代码>向量< /C>类型。第一个和第二个例子之间的差异的可能复制是语法。有几种样式可以初始化数组。我建议使用A,因为它的行为更像C++ <代码>向量< /C> >类型。您甚至不需要右边的INT[]部分,<代码> int [] ABC= NeX[] { 99, 98, 92,97, 95 };<代码>工作正常谢谢,我只是觉得这与能够将一个函数传递给另一个函数有关,而不能将另一个函数传递给另一个函数,因为它们都是初始化的方式,你甚至不需要右边的int[]部分,
int[]abc=new[]{99,98,92,97,95}工作正常谢谢,我只是觉得这与能够将一个函数传递给另一个函数有关,因为它们都是初始化的