请教一个关于内存回收的问题
////定义一个关于糖的结构 赋值并输出////#include <iostream>
using namespace std;
struct sugers
{
char *name;
float weigth;
int hot;
};
void main()
{
sugers *snack=new sugers; //开辟sugers空间
snack->name =new char; //开辟name空间
strcpy(snack->name,"Mocha Munch"); //赋值
snack->weigth=2.3; //赋值
snack->hot=350; //赋值
cout<<"sugers name: "<<snack->name<<endl; //输出name
cout<<"sugers weight: "<<snack->weigth<<endl; //输出weight
cout<<"sugers hot: "<<snack->hot<<endl; //输出hot
}
上面的代码 请问下 开辟的堆空间最后是怎么被回收的??
是不是只有在当堆空间的指针指向另外一个数据的时候 才有我们自己手动显示的回收先前开辟的空间?
不好意思 要是用词不当 请指出来