我有一个A级,必须有一个类传递给它;从A我有两个B和C类; B和C是否可以使用A中的构造函数,与默认构造函数相似。
A
/ \
B C
A::A(randomNumber &rnd)
{
....
}
答案 0 :(得分:3)
是。使用
class B {
public:
B() : A(someRndNum) {}
};
和C相同。
答案 1 :(得分:0)
是的,有可能:
class B
{
public:
B(randomNumber& rnd) : A(rnd) { }
// ...
};
如果要在A
的默认构造函数中调用B
的构造函数,则必须传递一个全局对象:因为A
的构造接受左值引用,创建临时不是一种选择。
B() : A(global_random_number);
答案 2 :(得分:0)
您可以使用以下语法:
B::B() : A(aRandomNum)
{
....
}