ノードをリンクリストに追加する関数をビルドする方法を理解できていないようです。C++のノードのメモリアドレスを設定する
これまでのところ、私はこれを持っています。
void StringList::add(string value){
StringNode *temp = new StringNode;
temp->data = value;
temp->next = NULL;
if(head==NULL){
head = temp;
temp = NULL;
}
リストに追加するたびに前のノードのメモリアドレスを設定する方法がわかりません。理想的には、私は自分自身にテールノードを与えていたでしょうが、私はドライバとヘッダーファイルを提供していました。どんな洞察にも感謝します。
ノードをリストの先頭に追加する場合は、新しいノードを作成し、新しいノードの「next」をリストの現在のヘッドに設定してから、「head」を新しいノードをポイントします。あなたのリストが空でない限り、 'next'は(通常)nullです。 – Steve
「前のノードのメモリアドレスを設定する」とはどういう意味ですか?ノードのアドレスは決して変更しないでください。そうしないと、リンクされたリストの目的を破ってしまいます。あなたはちょうどリンクを調整する必要があります。 – PaulMcKenzie
@ user8891853リスト定義を表示します。 –