クラスでジェネリックメソッドを実行しようとしていますが、次のようなものがあります。
#include "stdafx.h"
#include <sstream>
#include <iostream>
#include <conio.h>
using namespace std;
class Test
{
public:
template<class T>
T returnVal(T value);
}
template<class T>
T Test::returnVal(T value)
{
return value;
}
int main()
{
string reference = "stringVal";
Test ref;
cout << ref.returnVal<string>(reference);
getch();
return 0;
}
エラー メッセージ: エラー 1 エラー C2143: 構文エラー: ';' がありません >''テンプレート<''の前
ただし、call function returnVal (main()) でエラーが表示されます。このコードの検証についてはわかりません (学習中です)。これの何が問題なのですか?