gpt4 book ai didi

c++ - 无法在派生类中调用虚拟保护方法

转载 作者:行者123 更新时间:2023-11-30 03:38:42 25 4
gpt4 key购买 nike

<分区>

以下代码无法在 GCC 4.9.1 中编译:

class A
{
protected:
virtual void f() {}

};

class B : public A
{
protected:
virtual void f() override { A* a = new A; a->f(); }
};

我得到以下信息:

header.h: In member function 'virtual void B::f()':
header.h:51:17: error: 'virtual void A::f()' is protected

我希望它能编译。

为什么会失败?有没有比公开 f() 更好的方法?

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com