作者wandering25 (晃晃)
看板C_and_CPP
標題[問題] 關於pointer allocate memory問題?
時間Tue Apr 14 16:33:43 2015
想請問一個關於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的觀念越想越模糊
因此上來請問各位
若有表達不清楚敬請見諒
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.112.4.194
※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1429000426.A.284.html
推 chinagogoya: 好像 C# 喔 04/14 16:40
推 fireslayer: 外面有東西接指標的話就可以存取 04/14 17:04
→ WYchuang: 儘量不要這樣用 容易memory leak .. 04/14 17:05
→ Jockey66666: 不建議這樣用, 在哪裡new就在哪裡delete 04/14 17:13
→ Push5F: OS會管理,還有SWEAP,不然5G程式怎載入4G記憶體? 04/14 21:39
→ jaid: 外面要用reference接,不然會leak,接了沒delete一樣leak 04/14 22:33