-1

関数ポインターと連結リストについて学習しようとしています。

私が持っているクラスで(プライベートとして)

int (*m_pointerToFunction)(int);

void List::apply_all( int (*pointerToFunction) (int)){
   m_pointerToFunction = pointerToFunction;
}

int triple(int i)
{
    return 3*i;
}

これは、リスト L2 で呼び出されます

L2.apply_all(triple);

ここで欠けているのはどの部分ですか?リスト内のノードでは何もしていないようです。

編集:問題は解決しました!コメントと答えとして、私はノードで何もしませんでした。私は今、リストを繰り返し処理していますが、うまくいきます。みんなありがとう:)

void List::apply_all( int (*pointerToFunction) (int)){
    Node *temp = head;
    while(temp){
        temp->value = pointerToFunction(temp->value);
        temp = temp->next;
    }
}
4

1 に答える 1