0

仕様:

次の構造を持ちたいです

struct edgeT {      
  string home;      
  string away;      
  int weight;  
};

そして、タイプ edgeT のプライオリティ キューがあります。

プライオリティ キューをテストする簡単なプログラムを作成しましたが、次のエラー メッセージが表示されます。

'テンプレート クラス minPQ' のテンプレート引数は、ローカル タイプ 'Main()::edgeT' を使用します

main() ルーチンの開始時に構造体を定義/宣言しました。

構造体を別の場所で定義する必要がありますか?

4

1 に答える 1

1

C++11 以降でのみ、関数で定義された型をテンプレート引数として使用できます。C+11 を使用するか、構造体定義を名前空間スコープに置きます。

于 2013-04-04T15:07:28.267 に答える