這裏的領域是代碼混淆了我的片段:刪除指針和使用已刪除對象
T* pop(){
if(head == 0)
return 0;
T* result = head->data;
Link* oldHead = head;
head = head->next;
delete oldHead;
return result;
}
的result
指針maked指向頭部的對象的「數據字段」。之後,head
被刪除。由於data
字段與head
一起被刪除,因此result
不得不指向空格或空格。
爲了減少混淆,請使用['std :: stack <>'](http://en.cppreference.com/w/cpp/container/stack)。 –
鏈接析構函數是否清理數據?如果不是,那麼不。 – Eddge
什麼是鏈接?什麼是頭?我不能編譯你的例子... –