この例では、リストの最初の要素を動的に割り当てることができない理由はわかりません。 私は "a"へのポインタを失うので、解決策が悪いと理解しています。私が理解していないのは、その場合、私の関数が空リストを返す理由です。C++の基本的な動的割り当て
要求されたように私は例を単純化しています
ListNode* createList() {
//Why not - ListNode* a = new ListNode(0); ?
ListNode list(0); ListNode * a = &list;
for(int i=0; i < 5; i++){
a->next = new ListNode(0);
a = a->next;
}
//return a->next;
return list.next;
}
定義されていない動作があります。何かが起こる可能性があります。 – user0042
問題を詳細に教えてください。あなたは「空リスト」とはどういう意味ですか?あなたは何が起こるかを見るために、デバッガのコードを一行ずつ進めようとしましたか?また、[最小、**完全**、および検証可能な例](http://stackoverflow.com/help/mcve)を作成して表示してください。 –
問題をよりよく理解し、マシンで実行できるように、コンパイル可能なコードを提供してください。 – alDiablo