如何动态分配二维字符串的内存如下。为多维字符串动态分配内存
struct sample {
int i;
std::string arrray [10][10];
};
如何为下面的内容动态分配内存?
struct sample {
int i;
std::string **arrray;
};
如何动态分配二维字符串的内存如下。为多维字符串动态分配内存
struct sample {
int i;
std::string arrray [10][10];
};
如何为下面的内容动态分配内存?
struct sample {
int i;
std::string **arrray;
};
(当你在结构c声明风格的数组在编译将分配空间为他们结构内)的第一个不需要内存分配。
第二个是相当标准的二维数组。
arrray = new string*[10];
for (int i = 0; i < 10; i++)
arrray[i] = new string [10];
第1步:使用std :: vector来保存字符串指针;
步骤2:使用您自己定义的类(向量容器)来封装向量;
第3步:重写2-demention操作符[],将2D下标映射到std :: vector大小;
第4步:现在问题是,如何操作2D下标?您可以定义另一个“朋友类”,矢量容器的[]返回一个朋友类,朋友类也有一个[],它返回std :: vector中的值。
不要忘了成员函数来改变大小。
你可以使用std:vector吗? – dchhetri