我已经阅读了一些有关更改数组大小的文章,但是我没有找到适合自己的类的东西。我需要的是“区域”的动态数组。
第一步(定义班级):
class Region{
private:
int start;
int end;
public:
Region(){
start=0;
end=0;
}
// some get and set functions
}
第二步(定义一个空的区域数组):
Region regions[0];
第三步(添加新区域)
// Pseudo-Code
generate a help array with dimension 1 (start is 0)
add old regions values to help (none, because it was empty in the beginning)
add the new region to help
delete the regions array
initilize a regions array with dimension 1 (old dimension+1)
copy help to region
delete help
我认为步骤2已经不正确。我想在步骤2和步骤3中获得一些帮助。
(我理解第2步和第3步之后)还有一个好处是:如何删除特定的索引区域。
关于马丁
答案 0 :(得分:1)
对于动态数组,您正在寻找std::vector<Region>
(请参见cppreference的参考资料)。其中包含插入,删除和推送操作。
您可以使用new[]
和delete[]
自己模拟行为,但是在C ++中不建议这样做