template <typename T>
class A {
class B {
typedef int INT;
INT func(double e) {
return INT(e * 3.6);
}
};
};
func
私の問題は、クラス宣言から関数の定義を削除することです。これは私のプログラムの単純化されたケースです。コンパイラは typedef について不平を言います。
これが私の試みです:
template <typename T>
A<T>::B::INT A<T>::B::func(double e) {
return INT(e * 3.6);
}
コンパイルエラーは main.cpp:14: error: expected constructor, destructor, or type conversion before "A".