【问题标题】:This creation of booleans results in an error? [closed]这种布尔值的创建会导致错误? [关闭]
【发布时间】:2014-04-23 06:17:43
【问题描述】:

好的,我正在尝试为学校项目创建布尔值存储。我有这个结构..我遇到了一个错误,所有与第一个 { 相关的所有结构都有错误

错误 2 数组初始值设定项只能用于变量或字段初始值设定项。尝试改用新的表达式。 Program.cs 34 17 程序

我不知道发生了什么...谁能帮帮我?

forwardAttackPossible = new bool [][]
                {
                    {false,false,false,false,false,false,   //MOVE UP 
                           false,false,false,false,false,
                           true,true,true,true,true,
                           true,true,true,true,true,
                           true,true,true,true,true},

                    {false,false,false,false,false,false,   //MOVE UP RIGHT 
                           false,false,false,false,false,
                           true,false,true,false,false,
                           false,true,false,false,false,
                           true,false,true,false,false},

                    {false,true,true,true,false,false,      //MOVE RIGHT 
                           true,true,true,false,false,
                           true,true,true,false,false,
                           true,true,true,false,false,
                           true,true,true,false,false},

                    {false,true,false,true,false,false,     //MOVE DOWN RIGHT 
                           false,true,false,false,false,
                           true,false,true,false,false,
                           false,false,false,false,false,
                           false,false,false,false,false},

                    {false,true,true,true,true,true,        //MOVE DOWN 
                           true,true,true,true,true,
                           true,true,true,true,true,
                           false,false,false,false,false,
                           false,false,false,false,false},

                    {false,false,false,true,false,true,     //MOVE DOWN LEFT 
                           false,false,false,true,false,
                           false,false,true,false,true,
                           false,false,false,false,false,
                           false,false,false,false,false},

                    {false,false,false,true,true,true,      //MOVE LEFT 
                           false,false,true,true,true,
                           false,false,true,true,true,
                           false,false,true,true,true,
                           false,false,true,true,true},

                    {false,false,false,false,false,false,   //MOVE UP LEFT
                           false,false,false,false,false,
                           false,false,true,false,true,
                           false,false,false,true,false,
                           false,false,true,false,true}
                };

【问题讨论】:

  • 抱歉,C#中使用了。
  • 错误非常明显。它会准确地告诉您哪里出了问题以及应该做什么。
  • 您似乎需要创建一个合适的数据模型而不是这个可怕的怪物。我建议使用enums 可以组合使用作为标志。

标签: c# arrays sorting boolean


【解决方案1】:

像这样改变你的语法:

 forwardAttackPossible = new bool [][]
            {
                new[] { boolValues },  
                new[] { boolValues },  
                new[] { boolValues }
            }

在您的示例中,您的代码应如下所示:

 forwardAttackPossible = new bool [][]
            {
                new [] {false,false,false,false,false,false,   //MOVE UP 
                       false,false,false,false,false,
                       true,true,true,true,true,
                       true,true,true,true,true,
                       true,true,true,true,true},

                new[]  {false,false,false,false,false,false,   //MOVE UP RIGHT 
                       false,false,false,false,false,
                       true,false,true,false,false,
                       false,true,false,false,false,
                       true,false,true,false,false},

                 // and so on... 
            };

正如错误所说:{ false,false,false } 仅在您定义这样的新字段或变量时有效:

bool[] values = { true, false, true };

在您的情况下,您需要添加 new bool[] 或仅添加 new [] 以明确声明您要创建一个数组。

【讨论】:

  • 效果很好!谢谢!
  • @downvoters 愿意解释这个答案有什么问题。
  • 我想你知道为什么 :)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多