1

プロジェクトにいくつかのソースをインポートしようとしています。そして、コンパイルしようとしたときにこのエラーに遭遇しました。

6:1: error: unknown type name 'template'

エラーを取得するヘッダーは次のようになります。

template <typename T> T MyMin(T a, T b)
  {  return a < b ? a : b; }

template <class T> inline T MyMax(T a, T b)
  {  return a > b ? a : b; }

template <class T> inline int MyCompare(T a, T b)
  {  return a < b ? -1 : (a == b ? 0 : 1); }

inline int BoolToInt(bool value)
  { return (value ? 1: 0); }

inline bool IntToBool(int value)
  { return (value != 0); }
  • Eclipse Indigo に基づく Tizen SDK 2.0 を使用しています。
  • Cygwin がインストールされており、使用されるデフォルトの C++ コンパイラは clang++ です。

詳細が必要な場合は、お知らせください。

何が問題なのか分かりますか?

4

1 に答える 1

1

gccは .c ソース ファイル内で呼び出されたため、 gccMyLibrary.hを使用してコンパイルされたことがわかりました。

これは、すべてが同じファイルにつながる多数のインクルードが原因でした。

gccが使用されたため、キーワードテンプレートが認識されませんでした。

が含まれているソースファイルをg++でコンパイルすることで修正しましたMyLibrary.h

于 2013-07-16T13:24:10.350 に答える