重複の可能性:
「template」および「typename」キーワードをどこに、なぜ配置する必要があるのですか?
コンパイラによって認識されないテンプレート関数のマップイテレータ
インスタンス化されたテンプレート関数がありstd::map::iterator
ます-
template <class B , class C>
C getValue (B& myMap , C returnType) {
map<string,C>::iterator it = myMap.find(var);
// implementation ...
}
そしてそれはエラーを促します-
In function ‘C getValue(char*, B&, C)’:
error: expected ‘;’ before ‘it’
error: ‘it’ was not declared in this scope
どうすればきちんと作ることができますか?