如果我动态地将内存分配给一个静态变量应该我释放它还是会自动释放它

时间:2016-06-08 03:32:46

标签: c++ dynamic static free

如果我动态地将内存分配给一个静态变量,我应该释放它还是自动释放它?

static int* p;

int f(){p = new int[50];}

destructor::~destructor{delete p;}

1 个答案:

答案 0 :(得分:0)

当然,你必须自己释放它!为什么它会自动释放它指向的内存?这是动态分配的想法,你选择什么时候摆脱内存!指针本身p将被销毁,但它指向的内存将保持不变,除非你先delete p(即解除它指向的内存)。它不会因为pstatic而改变任何内容。