1

我正在尝试打印动态分配的二维数组的内容。但是,当我尝试下标一个元素时,我得到一个错误。任何帮助,将不胜感激。

制作数组的片段:

   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
4

1 回答 1

0

好吧,我现在觉得自己像个白痴,哈哈。m_points是一个成员变量,我声明了两次(一次在构造函数中,一次在头文件中)。修改此问题后,一切正常。无论如何,感谢您的帮助。

于 2012-04-27T02:48:11.817 回答