我有一个类,我想包含我创建的多个对象。现在有效的代码是:
进程.h:
private:
myObj *data;
进程.cc:
data = new myObj[10];
但是,我想将值传递给构造函数,因此我尝试将其转换为 std::vector (在修改构造函数以获取值之后)。
进程.h:
private:
std::vector<myObj> data;
进程.cc:
for (int m=0; m<10; m++) data.push_back( myObj(1.2) );
当我尝试它在执行时崩溃
*** glibc detected *** ... corrupted double-linked list: ... ***
当我尝试为我分配的其他数组释放一些内存时,gdb 中的回溯显示析构函数中的错误。搜索没有显示任何明显的东西。我在 中使用了一些静态成员变量myObj
,这可能是个问题吗?