我正在尝试打印动态分配的二维数组的内容。但是,当我尝试为元素下标时,出现错误。任何帮助,将不胜感激。
构成数组的片段:
char ** m_points = new char * [m_height];
for (int y_i=0; y_i<m_height; y_i++)
{
m_points[y_i] = new char[m_width];
for (int x_i=0; x_i<m_width; x_i++)
m_points[y_i][x_i] = ' ';
}
这应该打印数组内容(cout << m_points[y_i][x_i]
是发生错误的地方):
for (int y_i=0; y_i<m_height; y_i++)
{
for (int x_i=0; x_i<m_width; x_i++)
cout << m_points[y_i][x_i];
cout << endl;
}
错误:
invalid types ‘char[int]’ for array subscript
最佳答案
好吧,我现在觉得自己像个白痴,哈哈。 m_points
是一个成员变量,我声明了两次(一次在构造函数中,一次在头文件中)。修改此问题后,一切正常。无论如何,感谢您的帮助。
关于c++ - 打印动态二维数组,C++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10343776/