假設我們有下面的示例類:C++:從模板類繼承與可能的不同構造函數參數
class A {
public:
explicit A(int foo) { }
void test() {
cout << "I'm in A" << endl;
}
};
class B {
public:
explicit B(string bar) { }
void test() {
cout << "I'm in B" << endl;
}
};
我想定義一個子類從模板化類 可以專門爲一個繼承的A或B.我面臨的問題是A 和B有不同的構造函數參數,所以構建Child的構造函數是 證明有點令人煩惱。
template <class ParentClass>
class Child : public ParentClass {
public:
Child<B>() : ParentClass("foo") {
}
};
int main() {
Child<B> c;
c.test();
return 0;
}
不過,我希望也能像做Child<A> c
:如果我這樣做下面的事情工作。這可能是 嗎?
謝謝!
你想要一個'Child'的默認構造函數嗎? – skypjack