隐藏子类中的变量

Hiding variables from subclasses

本文关键字:变量 子类 隐藏      更新时间:2023-10-16

我有许多遵循通用接口Foo_Interface.h的C++类。这些类不是"受信任的"。我希望他们能够访问两种与主系统通信的方法(通过 Foo_Interface.h)。当他们扩展 Foo_Interface.h 时,这很容易,我只是没有将方法 A 和 B 声明为虚拟方法。但是,这些方法 A 和 B 需要有权访问Foo_Interface的类变量(在本例中为终结点的地址),子类不应看到该变量。

我想说的是,这个变量应该只对 A 和 B 方法可见(变量将通过构造函数实例化),因为这些子类是通过单独的方法 (Foo_main) 运行的。

这可能吗?

PutGet听起来不太像功能界面。这听起来更像是一种设计气味。但无论如何,只需使他们访问的变量private.

这就是它在语言中的用途。

它使事情变得private.