[問題] linked list

看板C_and_CPP作者 (追夢)時間15年前 (2010/12/24 18:11), 編輯推噓0(001)
留言1則, 1人參與, 最新討論串3/4 (看更多)
要用linked list 實做 pop的問題 要把pop出的資料放到data變數裡 typedef struct E { struct E *next; void *value; } E; bool pop( E **stack, void **data ){ E *elem; if (!(elem = *stack)) return false; *data = elem->value; *stack = elem->next; delete elem; return true; } 我的理解是: delete elem只會delete掉一層, 也就是 *value所指的資料是仍然存在 這也是為什麼可以把他assign給*data 給return回去 也就是說 就算delete掉E 的object還是會剩一堆value資料在記憶體那邊沒清掉 這樣對嗎 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.62.111.1

12/24 23:10, , 1F
嗯,看code我理解無誤的話,是跟您的解釋一樣的
12/24 23:10, 1F
文章代碼(AID): #1D577B5t (C_and_CPP)
討論串 (同標題文章)
文章代碼(AID): #1D577B5t (C_and_CPP)