0

我有一个 A 类,它必须有一个类传递给它;从AI有B类和C类两个;B 和 C 是否可以使用 A 中的构造函数,与默认构造函数相对应。

     A
    / \
   B   C 

A::A(randomNumber &rnd)
{
    ....
}
4

3 回答 3

3

是的。采用

class B {
public:
   B() : A(someRndNum) {}
};

和 C 一样。

于 2013-03-22T11:18:34.610 回答
0

是的,有可能:

class B
{
public:
    B(randomNumber& rnd) : A(rnd) { }
    // ...
};

如果你想A在 ' 的默认构造函数中调用 ' 的构造B函数,你将不得不传递一个全局对象:因为A' 的构造接受左值引用,所以创建一个临时的不是一个选项。

B() : A(global_random_number);
于 2013-03-22T11:19:00.657 回答
0

您可以使用以下语法:

B::B() : A(aRandomNum)
{
    ....
}
于 2013-03-22T11:20:48.840 回答