cpp 中类型为 vector<A>* 的内存泄漏

Pul*_*rma 3 c++ pointers memory-management vector heap-memory

下面的代码部分是否存在内存泄漏。我有一个类 A 和一个返回指向 A 类型向量的指针的方法。

class A{
  public:
        shared_ptr<int> a;
};

vector<A>* _array(){
    // some code 
    return new vector<A>();
}

int main(){
    vector<A> *a = _array();
}
Run Code Online (Sandbox Code Playgroud)

lor*_*rro 6

是的,main()你分配_array()分配给它的东西*a,但永远不会释放它。要修复它,您需要delete a;.