のフィールドを使用することは、私を混乱させるコードの抜粋です:は、ポインタを削除し、ここで削除されたオブジェクト
T* pop(){
if(head == 0)
return 0;
T* result = head->data;
Link* oldHead = head;
head = head->next;
delete oldHead;
return result;
}
result
ポインタは頭のオブジェクトの「データ・フィールド」を指すように集約しています。その後、head
が削除されます。 result
はと一緒に削除されているので、nullまたは空白を指す必要がありますか?
混乱を避けるために、['std :: stack <>'](http://en.cppreference.com/w/cpp/container/stack)を使用してください。 –
リンクデストラクタはデータをクリーンアップしますか?そうでなければ、いいえ。 – Eddge
リンク先?頭は何ですか?私はあなたの例をコンパイルできません... –