C ++ - 木の宿題でエラーをコンパイル:エラー:「*」トークンの前に期待されるコンストラクタ、デストラクタ、または型変換

StackOverflow https://stackoverflow.com/questions/4200904

  •  25-09-2019
  •  | 
  •  

質問

(私が使用している私は現在、宿題をやろうとしている、と私は物事が.inlファイルに.hファイルの最初の(クラスのヘッダー、および空の定義でコンパイルするために取得しようとしています型名テンプレート))。

私はこのエラーを取得しています:

error: expected constructor, destructor, or type conversion before ‘*’ token
http://ideone.com/dm3Bpする

ここに私の.hファイルです http://ideone.com/5FBepする

ここに私の.inlファイルです

私は.inlファイルの末尾にノード(これらのファイルには、Noeudと呼ばれる)を作成しようとしています。 どうやら、私はタイプEデータの配列から値を取ることができない...

エラーがちょうどメソッドの定義の前に、次のとおりです。

Noeud * Arbre<E>::_auxPereSym(E *tabS, int debut, int fin, E **ptr, int &card) throw (std::bad_alloc)

私はNoeudは私のクラスARBREの入れ子構造である...しかし残念ながら、私は、ヘッダファイルを変更することはできませんので、戻り値の型がARBRE :: Noeudなければならないことを他のスレッドに読みました...

任意の考え?

あなたの時間と助けてくれてありがとう。

注:これはフランスの宿題で、翻訳は何のために必要な場合、私に教えてください。

役に立ちましたか?

解決

(あなたの心配ごととしてではなく、ヘッダファイル).inlファイルに定義している間ように資格を試します。

の戻り型が適切に適切な範囲内で検索する必要がある。

BRAINコンパイルされたコードAHEAD

template<typename E>
typename Arbre<E>::Noeud * Arbre<E>::_auxPereSym(E *tabS, int debut, int fin, E **ptr, int &card) throw (std::bad_alloc)

EDIT2ます:

ようにメンバ関数の変化のreturn文ます:

return new typename Arbre<E>::Noeud(tabS[0]);
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top