考虑以下代码。 因此我们有一些 main.cpp 文件,我们声明了一个静态指针。
int main()
{
static int* array = new int[1000];
}
所以在main结束后,程序运行结束前,静态指针会从静态存储中删除。那么它分配的内存呢?什么时候删除数组?会不会漏?
最佳答案
当程序结束时,实际内存将被释放给操作系统,因为程序结束了,而不是因为你释放了它。
所以是的,你可以说它泄漏,尽管大多数程序员将泄漏称为连续发生的事情,而不是你知道的一次性分配并且无论如何都会被回收。
关于c++ - 静态指针和其他奇怪的东西,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29770293/