-1

コンパイル エラーのある次のソース コードがあります。私がやろうとしていることは明らかなので、返される型はテンプレートであり、オブジェクトnode<N>*との競合を引き起こしているため、返される型は正しい型ではないと言って説明するつもりはありません。session*エラーはこちらです。

linked_list_1.cpp|17|error: cannot convert 'node<session*>*' to 'session*' in assignment|
4

2 に答える 2

2

return_node17 行目では、 の戻り値をに代入しますが、 の戻り値のsession*型はreturn_node( Node<N>*)Node<Session*>*ではなくN( session*) です。アクセサー関数をノード クラスに追加し、それを使用してデータ メンバーにアクセスします。

session* SESSION_COPY;
SESSION_COPY =  LIST->return_node(0)->getData();
于 2013-05-02T05:35:11.483 に答える
1

関数はではなく をreturn_node返すためです。または、がテンプレート引数で置き換えられた場合:戻ります(ヘッダー ファイルを調べます) が、返されたポインターを変数に代入しようとします。エラーメッセージが非常に明確に言っているように。node<N>*NNreturn_nodenode<session*>*session*

于 2013-05-02T05:30:36.450 に答える