为什么子类的私有成员函数可以从父类调用

Why is a private member function of a subclass callable from the parent class?

本文关键字:父类 调用 函数 成员 子类 为什么      更新时间:2023-10-16

我希望下面的代码会给出一个错误,但编译正常

class B;
template<typename T>
class A
{
    private: 
    A()
    {
       T b;
       b.print();
    }
    void print()
    {
    }
 };
 class B: public A<B>
 {
 };

A如何访问私有成员,B的构造函数A()print()

尝试新建一个B类实例,它会编译错误。

B B;