0

我正在处理项目,此时需要从2D数组中读取单个字符以确定相应网格中的内容。如何在标题中声明后初始化2D字符数组

我声明了二维字符数组如下:

class GridManager{ 
    static char level1[5][6]; 
    static char level2[5][6]; 
    static char level3[6][10]; 
}; 

,我initiliasing他们在cpp文件如下:

char GridManager::level1[5][6] = 
{{'O','P','T','T','E','N'}, 
    {'W','M','N','W','M','P'}, 
    {'M','T','P','M','P','R'}, 
    {'O','N','M','P','M','R'}, 
    {'L','E','E','E','E','N'}}; 
char GridManager::level2[5][6] = 
{{'O','E','E','E','T','P'}, 
    {'W','M','B','K','W','R'}, 
    {'L','B','P','B','M','R'}, 
    {'M','P','N','T','E','N'}, 
    {'L','N','B','B','B','R'}}; 
char GridManager::level3[6][10]= 
{{'O','T','T','T','T','T','T','T','P','R'} 
{'O','T','T','T','T','B','P','R','R','R'} 
{'L','O','T','T','P','P','N','R','P','R'} 
{'W','W','T','L','K','K','K','K','R','R'} 
{'W','W','R','K','T','E','E','O','P','R'} 
{'W','B','N','N','B','B','B','N','B','N'}}; 

但是它不断呕吐上的错误第一行{在第二行表示它期待着}。 我曾尝试将它们初始化为静态的.cpp文件,但这并没有什么区别。 任何和所有的帮助,将不胜感激。 如果您需要更多信息/代码,请不要犹豫,问 问候, AzKai

回答

1

你忘了把逗号定义

char GridManager::level3[6][10]= 
{{'O','T','T','T','T','T','T','T','P','R'} 
{'O','T','T','T','T','B','P','R','R','R'} 
{'L','O','T','T','P','P','N','R','P','R'} 
{'W','W','T','L','K','K','K','K','R','R'} 
{'W','W','R','K','T','E','E','O','P','R'} 
{'W','B','N','N','B','B','B','N','B','N'}}; 

char GridManager::level3[6][10]= 
{{'O','T','T','T','T','T','T','T','P','R'}, 
{'O','T','T','T','T','B','P','R','R','R'}, 
{'L','O','T','T','P','P','N','R','P','R'}, 
{'W','W','T','L','K','K','K','K','R','R'}, 
{'W','W','R','K','T','E','E','O','P','R'}, 
{'W','B','N','N','B','B','B','N','B','N'}}; 
+0

我在开始时进行了此更改。它仍然在三个数组中都抛出了错误。经过几次清理和重建后,我不得不重新启动Visual Studio,现在奇迹般地工作。谢谢 :) – AzKai

1

这看起来不错,但你在你的最后一个数组的定义缺少的逗号,如下所示:

char GridManager::level3[6][10]= 
{{'O','T','T','T','T','T','T','T','P','R'}, // <- 
{'O','T','T','T','T','B','P','R','R','R'}, // <- 
{'L','O','T','T','P','P','N','R','P','R'}, // <- HERE 
{'W','W','T','L','K','K','K','K','R','R'}, // <- 
{'W','W','R','K','T','E','E','O','P','R'}, // <- 
{'W','B','N','N','B','B','B','N','B','N'}}; 
+0

你是最绝对正确的。我忘了添加它们,但是这个错误出现在所有3个数组中。 – AzKai

+0

该死!你使用哪种平台和编译器版本?你能否也请发布编译器诊断输出?这一切都适用于我(XCode /苹果llvm 5.0) –

+0

我使用visual studio 2010与x32调试器。我不确定哪个窗口在 – AzKai