-2
私は単一のリンクリストを持ち、AddNode
、DeleteNode
、PrintList
のような機能はうまく動作しますが、それにちょっとした操作が必要です。構造内に多くのデータ型を持つ単一のリンクされたリスト
それでは、私の構造があるとしましょう:
struct node
{
int data;
node* next;
bool used;
}
だから私は、すべてのノードでused
はtrue
になりたいです。しかし、いくつかのノードを削除したい場合は、used
をfalseに設定する必要があります。したがって、基本的に「使用済み」とは、ノードがリストにあることを意味します。そして、完全なリストを印刷したいのであれば、ノードだけをtrue
で印刷する必要があります。それを行う方法はありますか?または無意味ですか?
私はこれを試しましたが、変数が範囲外であることは明らかです。だから私はどうすればいいの?
void printList()
{
curr = head;
while(curr != NULL)
{
if (node->used == true)
{
cout << curr->data << " ";
curr = curr->next;
}
}
}
'ノード - >'あなたは、これがどうなるのか期待したのですか? 'node'はクラスの名前でありインスタンスではないので、動作しません。しかし、それが何をするのか説明したなら、それは助けになります。 'curr->'を意味するだけでしたか? –
if(curr-> used == true)に条件を固定すると、ifブロックから 'curr = curr-> next;'を移動する必要があります。そうでなければ、最初のfalseで無限ループになります。 – drescherjm