防止后代重写方法
Preventing descendants from overriding method
在 C++ 中(11/14/17,我不在乎),我有一个基础 class B
,它将方法 x
公开为 protected
。
在派生自 B
的 class D1
中,我想阻止(D1
的)更多后代调用 x()
。现在,如果我在 D1
中重写 x
,我会简单地将其标记为 final
.
但是,如果 D1
没有覆盖 x()
,但 D1
仍然想对后代隐藏它怎么办?我该怎么做?
How can I do that?
通过更改程序并覆盖 D1
中的 x
。您可以通过调用它来委托给基础 class 版本。
在 C++ 中(11/14/17,我不在乎),我有一个基础 class B
,它将方法 x
公开为 protected
。
在派生自 B
的 class D1
中,我想阻止(D1
的)更多后代调用 x()
。现在,如果我在 D1
中重写 x
,我会简单地将其标记为 final
.
但是,如果 D1
没有覆盖 x()
,但 D1
仍然想对后代隐藏它怎么办?我该怎么做?
How can I do that?
通过更改程序并覆盖 D1
中的 x
。您可以通过调用它来委托给基础 class 版本。