[問題] 關於pointer allocate memory問題?

作者: wandering25 (晃晃)   2015-04-14 16:33:43
想請問一個關於pointer觀念上的問題
就是int *pc = new int ;
這個pc跟記憶體要的空間是如何決定是否是可用的memory?
舉例來說
若有個function
int sub&( int&a, int&b){
int *pc = new int;
*pc = a-b ;
return (*pc);
}
這樣離開這個function後
pc被delete掉
但他所allocate的空間被reference出去
這個空間是有可能會被其他function所動到嗎?
一些關於pointer的觀念越想越模糊
因此上來請問各位
若有表達不清楚敬請見諒
作者: chinagogoya (下棋逍遙遊)   2015-04-14 16:40:00
好像 C# 喔
作者: fireslayer (fireslayer)   2015-04-14 17:04:00
外面有東西接指標的話就可以存取
作者: WYchuang (愛賴床的黃金獵犬)   2015-04-14 17:05:00
儘量不要這樣用 容易memory leak ..
作者: Jockey66666 (往事已成追憶)   2015-04-14 17:13:00
不建議這樣用, 在哪裡new就在哪裡delete
作者: Push5F (帳號已賣)   2015-04-14 21:39:00
OS會管理,還有SWEAP,不然5G程式怎載入4G記憶體?
作者: jaid (jaid)   2015-04-14 22:33:00
外面要用reference接,不然會leak,接了沒delete一樣leak

Links booklink

Contact Us: admin [ a t ] ucptt.com