为什么不编译此代码?使用模板参数的静态成员模板
struct A {
template <class T>
static T a(int i) { return 2*i; }
};
template <class T>
struct B {
double b;
B(): b(T::a<double>(5)) {}
};
template class B<A>;
编译器甚至没有达到模板实例化。我使用的是gcc 4.7.0。
test.cc: In constructor »B<T>::B()«:
test.cc:9:25: Error: expected »(« before »<« token
test.cc:9:26: Error: expected primary-expression before »double«
也许你可以提供编译器的错误信息? – ronag 2013-02-13 14:03:29
对不起,我忘了 – 2013-02-13 14:05:37