我正在尝试打印动态分配的2D数组的内容。但是,当我尝试下标元素时,我得到一个错误。任何帮助,将不胜感激。
制作数组的代码段:
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
答案 0 :(得分:0)
m_points
是一个成员变量,我将它声明了两次(一次在构造函数中,一次在头文件中)。在修改这个问题之后,一切都很完美。无论如何,谢谢你的帮助。