我有 3 个类——一个超类、一个子类和一个容器类。我的超类具有以下构造函数:
Superclass(char* t,int(*i)(myType),int a,int b,int c,int p){
T=t;
I=i;
A=a;
B=b;
C=c;
P=p;
}
和子类构造函数:
Subclass(char* t,int(*i)(myType),int a,int b,int c,int p)
: Superclass(t,i,a,b,c,p){;}
容器类包含多个指向子类类型对象的指针:
class Container{
public:
char x[2000];
int funct(myType);
...
Subclass* S;
...
Container(){
S= new Subclass(x,&funct,3,4,2000,0);
...
}
}
我在上面的行“S = new ...”上收到编译器错误,消息如下:
"Error: No instance of 'Subclass::Subclass' matches the argument list
argument types are: (char[2000],int(Container::*)(myType),int,int,int,int)"
我相信(尽管我不确定)错误与传递的函数指针有关。我以类似的方式使用了函数 ptrs,但似乎不喜欢它指向 Container 类中的函数。有什么建议么?
在此先感谢您的帮助。