我可以有一个typedef函数指针在这样的类:的typedef函数指针继承
template<typename T>
class MyClass
{
public:
typedef T (*fptr)(T);
void doSomething(fptr my_fptr) { /*...*/ }
};
,这工作得很好。但如果我从这样的类继承,如下所示:
template<typename T>
class MyClass
{
public:
typedef T (*fptr)(T);
virtual void doSomething(fptr my_fptr) = 0;
};
template<typename T>
class MyOtherClass: public MyClass<T>
{
public:
void doSomething(fptr my_fptr) { /*...*/ }
};
编译器抱怨说fptr是未定义的。有没有继承这样的函数指针typedefs的方法?谢谢, james
你使用什么编译器?我不会抱怨这个。 – 2010-08-12 15:02:04
@Seb Rose:我猜你正在使用VS ...这是该编译器的已知问题。根据标准的代码不应该编译。 – 2010-08-12 15:07:57
@dribeas - 感谢那 – 2010-08-12 15:19:52