to 5楼:
int value=100;是在栈里分配内存空间存储数据100;
int *value=new int(100);是在堆里分配内存空间存储数据100;
栈的内存会因为生命周期的结束而自动释放内存,堆则需要我们来手动的清理不需要的内存,让他回收再利用。作者: `|楛纞♂ぺ﹖ 时间: 2009-11-3 04:05
使用 new 分配的記憶體, 應該使用 delete 釋放 (資源管理)
int *value = new int(100);
定義一個 int 類的變數 value, 並使用了 int 的構造函數 int(__int32). 記憶體空間由此構造函數分配.作者: 水乡渔夫 时间: 2009-11-3 04:05
你要知道栈区的地址是带有一定偶然的
你的void somefn(char *str)
{
int a=40;
cout<<str<<endl;
}