我有一个类Grandparent
,它是由库提供的。我想定义的Grandparent
子类的接口,所以我创建了一个名为Parent
抽象类:将抽象类的参数传递给祖父类的构造函数
class Grandparent {
public:
Grandparent(const char*, const char*);
};
class Parent : public Grandparent {
public:
virtual int DoSomething() = 0;
};
为Grandparent
的构造函数有两个参数。我想我的孩子上课,Child
,也有两个参数的构造函数,而只是通过这些给构造为Grandparent
...像
class Child : public Parent {
public:
Child(const char *string1, const char *string2)
: Grandparent(string1, string2)
{}
virtual int DoSomething() { return 5; }
};
当然,Child
的构造函数不能调用其祖父类的构造函数,只有它的父类的构造函数。但由于Parent
不能有一个构造函数,我怎样才能将这些值传递给祖父母的构造函数?
为什么你认为'Parent'不能有一个构造函数? – 2012-02-28 02:22:30