在C++中,释放指针的std::vector的正确方法是使用std::vector::clear()
函数。这个函数会清空vector,并释放其中的内存。
示例代码:
#include<iostream>
#include<vector>
int main() {
std::vector<int*> my_vector;
// 添加指针到vector中
for (int i = 0; i < 5; ++i) {
int* ptr = new int(i);
my_vector.push_back(ptr);
}
// 释放指针
for (int* ptr : my_vector) {
delete ptr;
}
// 清空vector并释放内存
my_vector.clear();
return 0;
}
在上面的示例代码中,我们首先创建了一个包含指针的std::vector,并向其中添加了一些指针。然后,我们使用std::vector::clear()
函数清空vector并释放其中的内存。这样,我们就可以确保指针被正确释放,避免内存泄漏。
推荐的腾讯云相关产品:
产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云