清除向量时,stl 向量中的 stl 向量是否超出范围?

Do stl vectors inside stl vectors go out of scope when the vector is cleared?

本文关键字:向量 stl 范围 是否 清除      更新时间:2023-10-16

在这段代码中:

class myClass
{
    ...
    vector<myThing> thing(10);
    vector<myStuff> stuff(10);
    ...
}
vector<myClass> vecClass(10);
...
vecClass.clear();  /// calls destructor on myClass instances

vecClass的每个元素包含 10 个事物和事物的元素向量。当clear()被召唤时,这是否使事物和东西超出范围,从而被适当地销毁?还是我必须做一些明确的事情?

是的,它们的析构函数将被调用。您不需要在这里执行任何其他操作。