到目前为止,我已经删除矢量之前,使用矢量::明确()始终。但是有必要吗?无论如何,不是在析构函数中调用vector :: clear()函数吗?我必须删除它之前清除的std ::矢量
// Consider I have this vector
std::vector<uint32_t>* myVector = new std::vector<uint32_t>(50);
... // vector gets filled
myVector->clear(); // <-- redundant??
delete myVector;
myVector = nullptr;
这条线是不是是多余的关于你的代码的唯一的事情! –
为什么地球上你正在使用'new?'实例化一个'std :: vector'?你是否有特殊的理由这么做? –
C++不是Java。没有必要调用'new'来创建向量。 – PaulMcKenzie