C++ 受保护部分:没有要调用的匹配函数

C++ 受保护部分:没有要调用的匹配函数,c++,C++,有人能告诉我为什么这个代码不起作用吗?我得到:没有匹配的函数来调用'Child::Child()'错误。如何正确地将此孩子放入受保护区域?:( 它与“protected section”无关。应使用指定要调用的类子类的构造函数: class Parent { // ... public: Parent(int d) : child(d) // ~~~~~~~~~~ { this->pAge=d; } }; 否则,将尝试

有人能告诉我为什么这个代码不起作用吗?我得到:没有匹配的函数来调用'Child::Child()'错误。如何正确地将此孩子放入受保护区域?:(

它与“protected section”无关。应使用指定要调用的类
子类
的构造函数:

class Parent
{
// ...
public:
    Parent(int d) : child(d)
//                ~~~~~~~~~~
    {
        this->pAge=d;
    }
};

否则,将尝试调用
Child
(即
Child::Child()
)的默认构造函数,但该构造函数不存在。

必须在构造函数成员初始值设定项列表中对其进行初始化。
class Parent
{
// ...
public:
    Parent(int d) : child(d)
//                ~~~~~~~~~~
    {
        this->pAge=d;
    }
};