相关疑难解决方法(0)

在C++中使用指向动态分配对象的指针向量时,如何避免内存泄漏?

我正在使用一个指向对象的向量.这些对象派生自基类,并且正在动态分配和存储.

例如,我有类似的东西:

vector<Enemy*> Enemies;
Run Code Online (Sandbox Code Playgroud)

我将从Enemy类派生,然后为派生类动态分配内存,如下所示:

enemies.push_back(new Monster());
Run Code Online (Sandbox Code Playgroud)

为了避免内存泄漏和其他问题,我需要注意哪些事项?

c++ pointers stl vector derived

66
推荐指数
3
解决办法
9万
查看次数

std :: list :: remove方法是否调用每个被删除元素的析构函数?

std::list<Node *> lst;
//....
Node * node = /* get from somewhere pointer on my node */;
lst.remove(node);
Run Code Online (Sandbox Code Playgroud)

std :: list :: remove方法是否调用每个被删除元素的析构函数(和空闲内存)?如果是,我怎么能避免呢?

c++ destructor stl list c++-faq

27
推荐指数
3
解决办法
2万
查看次数

标签 统计

c++ ×2

stl ×2

c++-faq ×1

derived ×1

destructor ×1

list ×1

pointers ×1

vector ×1