C# 应使用嵌套数组初始值设定项

C# 应使用嵌套数组初始值设定项,c#,arrays,visual-studio,C#,Arrays,Visual Studio,我正在尝试创建一个数组,该数组在一行中包含6个字符串,在这之后还有许多其他行。这是我的代码: string[, , , , , ,] conj = new string[,,,,,,] { {"aimer", "aime", "aimes", "aime", "aimons", "aimez", "aiment"}, }; 我收到错误“需要嵌套数组初始值设定项”。 我以前从来没有做过这么大的数组,在谷歌搜索中我找不到任何关于我为什么会出现这个错误以及我需要做什么来修复这个错误的

我正在尝试创建一个数组,该数组在一行中包含6个字符串,在这之后还有许多其他行。这是我的代码:

string[, , , , , ,] conj = new string[,,,,,,] {
        {"aimer", "aime", "aimes", "aime", "aimons", "aimez", "aiment"},
};
我收到错误“需要嵌套数组初始值设定项”。 我以前从来没有做过这么大的数组,在谷歌搜索中我找不到任何关于我为什么会出现这个错误以及我需要做什么来修复这个错误的信息


谢谢你的帮助

您的数组定义
字符串[,,]
不应该有任何逗号。改为使用
string[]


数组
[]
是一个事物列表。您所拥有的称为矩形阵列(尽管该定义可能不再适用于那么多维度)。在一个更简单的例子中:
[,]
,(实际上是一个矩形数组)您得到的更类似于项目的“网格”,而不是列表。

您正在尝试初始化多维矩形数组(7维!)

所以

人们可能会在这里看到一种模式。您应该能够从这里开始(提示:您将有一个7深的花括号嵌套)

请注意,每个初始值设定项都必须具有相同的等级,以免编译器感到不安。例如,如果你说:

int[,,] r3d = {
                {
                  {  1 ,  2 ,  3 ,  4 , } ,
                  {  5 ,  6 ,  7 ,  8 , } ,
                  {  9 , 10 , 11 , 12 , } ,
                } ,
                {
                  { 13 , 14 , 15 , 16 , } ,
                  { 17 , 18 , 19 , 20 , } ,
                //{ 21 , 22 , 23 , 24 , } ,
                } ,
              } ;

编译器哀鸣着说,
需要长度为“3”的数组初始值设定项
。这是因为
x3d[0,1]
的初始值设定项不一致。

我认为在开始编写代码之前,有必要快速阅读一些关于语言语法的概述。只花了10秒钟就找到了这篇关于C#中数组的MSDN文章。这个问题似乎离题了,因为它涉及一个基本的语言特性(数组),这个主题对于堆栈溢出的答案来说太宽泛了。这个网站不能代替学校里的好书、教程或课程。如果这是语法,那么对于大型数组,你会遇到麻烦,对于大小不是编译时常数的数组,你会遇到更大的麻烦。如果我在语法上犯了一些错误,那么很抱歉!我在C#上了大约两年的编程课。我在这里发布了一个问题,因为我在谷歌上找不到任何东西。。。我希望,如果这只是一个语法错误,有人可以帮我修复它…我不太擅长措辞,所以这个问题可能被误读了。这一行只代表一行六列,然后我将在这之后有六列相同的行。是 啊没必要这么刻薄,伙计!!我想我只是对数组有点误解。我以为逗号代表的是我在另一个数组中编码的元素数。。。谈论大脑放屁。谢谢你的帮助!我已经解决了这个问题:)我只需要一个逗号,因为它是一个2d数组@NicholasC有两种不同的数组表示法。对于二维数组,
a[x][y]
是锯齿状或稀疏数组,而
b[x,y]
是矩形或连续数组。严格地说,
a[x][y]
是数组的数组。它有固定数量的行,但每个行元素
a[x]
本身就是一个数组,单独分配。因此,每行可以有不同数量的列<另一方面,code>a[x,y]是一个单一的、连续的、具有固定行数和固定列数的内存块。当然,该模型可以扩展到您为数组提供的任何维度。
int[,,] r3d = {
                {
                  {  1 ,  2 ,  3 ,  4 , } ,
                  {  5 ,  6 ,  7 ,  8 , } ,
                  {  9 , 10 , 11 , 12 , } ,
                } ,
                {
                  { 13 , 14 , 15 , 16 , } ,
                  { 17 , 18 , 19 , 20 , } ,
                //{ 21 , 22 , 23 , 24 , } ,
                } ,
              } ;