我有一个类,它有一个指向另一个类对象的指针向量 .

class Foo {
public:
Foo(vector<Member*> m);
Foo();
~Foo(void);

void addMember(Member* m);
vector<Member*> getMember(void);
private:
vector<Member*> m;
};

这是cpp文件

Foo::Foo( vector<Member*> m) {
this->m; 
}


void Foo::addMember(Member*m) {
this->m.push_back(m);
}

vector<Member*> Foo::getMember() {
return this->member;
}

当我尝试添加对象时:

foo[x].getMember().push_back(new Member);

我有一个foo数组,我正在传递函数,我正在使用向量push_back . 在函数结束时调用成员obj析构函数,当我尝试到达Member对象时,我收到了seg错误 . 我错过了什么?

我按照建议使用智能指针修复了这个问题 . 谢谢 !

Member* m = new Member();