【救助】C++如何在类中定义一个动态二维数组

时间:2022-08-30 19:39:30
要能到数组的数据,能往数组中存数据,能获得数组的首地址。


class Picture
{
public:
  Picture();
  ~Picture();
private:
  int width;
  int height;
  vector<vector<int> > array;
};

能不能使用vector啊??数组的长宽是width和height,怎么赋值,在.h中赋值,还是在.cpp文件中赋值?

5 个解决方案

#1


【补充问题】
for(int i = height-1; i != -1; i--)
{
    for(j = 0; j != width; j++)
    {
array[i][j] = i*j
     }
}
直接向这样写行不行??没有初始化赋值,Picture的成员函数要使用到数组时候才赋值??

#2


不要使用多维数组
使用一维数组

#3


楼主,你可以参考下我先前发的帖子《【数组与指针】如何在C/C++中动态分配二维数组》
http://bbs.csdn.net/topics/390337580

或者直接到我博客中访问:
http://blog.csdn.net/morewindows/article/details/7664479

#4


百度:boost,
这个库里有这个东西

#5


楼主,像你那样是可以的,但是效率可能不如int **二维数组.
二维数组在constructor分配空间,destructor释放就行.

#1


【补充问题】
for(int i = height-1; i != -1; i--)
{
    for(j = 0; j != width; j++)
    {
array[i][j] = i*j
     }
}
直接向这样写行不行??没有初始化赋值,Picture的成员函数要使用到数组时候才赋值??

#2


不要使用多维数组
使用一维数组

#3


楼主,你可以参考下我先前发的帖子《【数组与指针】如何在C/C++中动态分配二维数组》
http://bbs.csdn.net/topics/390337580

或者直接到我博客中访问:
http://blog.csdn.net/morewindows/article/details/7664479

#4


百度:boost,
这个库里有这个东西

#5


楼主,像你那样是可以的,但是效率可能不如int **二维数组.
二维数组在constructor分配空间,destructor释放就行.