部首:
class Class{
//...
};
struct structTest{
std::vector<Class> stdvectorTest;
};
实现:
structTest structTest_Object;
//...
当structTest_Object
超出范围时,structTest_Object.stdvectorTest
会发生什么?我记得struct
类似于class
,std::vector
的析构函数释放了内存。
答案 0 :(得分:4)
struct
与class
相同,但与默认访问级别相同。
成员stdvectorTest
已妥善处理,其中包含所有Class
个对象。
答案 1 :(得分:2)
因为structTest拥有stdvectorTest作为值类型,所以将调用其析构函数。由于向量按值包含您的类,因此也会调用它们的析构函数。