コンパイラ エラー C2785

' declaration1 ' と ' declaration2 ' の戻り値の型が異なります

関数テンプレートの特殊化の戻り値の型が、プライマリ関数テンプレートの戻り値の型と異なります。

このエラーを解決するには

  1. 関数テンプレートのすべての特殊化を一貫性のために確認してください。

次の例では C2785 が生成されます。

// C2785.cpp
// compile with: /c
template<class T> void f(T);

template<> int f(int); // C2785
template<> void f(int); // OK