c++ - 使用使用私有(private)字段的基类方法

标签 c++ oop class inheritance subclass

我有一个类,它有几个 public 方法,这些方法使用一个 private 字段,它们都更改并在计算中使用这个字段。

我需要这个类的子类,新方法很少,新方法不会使用这个字段。我希望基类中的那些方法与它们的行为相同,但有点困惑,因为它们使用了私有(private)字段。

子类中是否可以访问私有(private)字段? 我还应该在我的子类中声明一个具有相同类型和名称的字段吗?

最佳答案

派生类无法访问私有(private)成员数据。如果要访问此数据,请将其更改为 protected 。用于更改私有(private)成员的基类的公共(public)成员函数仍可用于您的派生类,但不允许直接访问基类私有(private)数据。基类的所有公共(public)和 protected 字段都将对您的派生类可用(假设您使用的是公共(public)继承)

关于c++ - 使用使用私有(private)字段的基类方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15337530/

相关文章:

c++ - 管理类的聚合/组合成员之间的关系

c++ - 将 std::function<void(string, string)> 转换为通用 std::function<void()>

class - 在 Dart 中,当存储在变量中时如何使用 `class` ?

c++ - 文件流将十六进制文件读入二进制缓冲区

c++ - 库重新定义 NULL

c++ - 类中 constexpr 关键字的问题

oop - 设计类 : Each class encapsulate object of other related class

oop - CQRS:在 ICommandExecutor.Execute() 方法中返回结果好吗?

java - Java中的遗传算法分类器:基于规则的系统

java - 如何在整个 java 类中创建变量?