说我有:
vector<string>* foo = new vector<string>();
我向其中添加了很多东西,使用它,然后我只打电话给:
delete foo;
我需要先打电话给foo.clear();吗?还是delete调用析构函数。
foo.clear();
delete
请不要对此愚蠢发表任何评论,我知道这里至少应使用自动指针。此行为在我正在使用的代码库中,因此我无法解决此问题。
是,将调用vector的析构函数,这将清除其内容。
vector
根据容器的要求(C ++标准,表96-容器要求)