掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
.NETの参考書を教えてください (ID:60248)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
> 一例で結構です、どのようなコードでしょうか? 一例だと,部分特殊化とか。 # VC++.NETではなくVC++.NET 2003になってしまいますが。 #include <iostream> #include <typeinfo> template <typename T> class Foo { public: static void Output () { std::cout << typeid(T).name() << std::endl; } }; template <typename T> class Foo<T *> // l.13 { // l.14 public: static void Output () { // l.17 std::cout << "Pointer to "; Foo<T>::Output(); // l.19 } }; // l.21 int main () { Foo<int *>::Output(); return 0; } ---- VC++ 6.0 (コンパイルエラー) ---- test.cpp(21) : error C2989: 'Foo<class ?? ::T *>' : このテンプレート クラスはすでに非テンプレート クラスとして定義されています。 test.cpp(21) : error C2988: 認識できないテンプレートの宣言または定義です。 ---- VC++.NET (コンパイルエラー) ---- test.cpp(13) : error C2065: 'T' : 定義されていない識別子です。 test.cpp(13) : error C2059: 構文エラー : '>' test.cpp(14) : error C2143: 構文エラー : ';' が '{' の前にありません。 test.cpp(17) : error C2143: 構文エラー : ';' が '{' の前にありません。 test.cpp(19) : error C2687: 列以外でテンプレート クラスの入れ子の UDT を定義できません。 test.cpp(19) : fatal error C1903: 直前のエラーを修復できません。コンパイルを中止します。 ---- VC++.NET 2003 (出力) ---- Pointer to int
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.