我需要一些关于指针的类内声明的帮助。尽管我使用 c++,但我正在寻找一种使用 c 样式数组的方法(所以不幸的是没有向量)。我无法在执行过程中没有错误,例如“分段错误:11”或“总线错误:10”。目的是有一种方法可以在一个类中包含 10 个对人员的引用。
这些指针在 .h 文件中以这种方式声明:
private:
string * name;
string * surname;
int * index1;
int * index2;
在 .cc 文件的 ctor 中,我使用了不同的方式来分配内存,例如:
string * name = new string[10];
string * surname = new string[10];
int * index1 = new int[10];
int * index2 = new int[10];
但是我遇到了运行时错误,可能是因为它实际上没有访问私有变量或者它超出了内存(“分段错误”)。如果我不写上面的行,执行时输出是“总线错误”。我在编译中没有错误,只有在执行期间。我无法更改 .h 文件中的私有变量类型,并且它不允许我在类中使用 new,因为它将是 C++11 的扩展。
任何帮助将不胜感激