【发布时间】:2010-12-19 10:43:31
【问题描述】:
我有class A,它只有私有成员(包括数据、方法、构造函数、析构函数......)。我还有class B 是class A 的朋友。我希望 B 的所有派生类(也有从 B 继承的模板)也成为 class A 的朋友。有没有办法做到这一点?
【问题讨论】:
-
是的。将成员设为
protected而不是private。 -
因为我不希望其他类期望 B(和派生)可以创建和管理 A 类型的实例。
-
@Billy,这行得通吗?将它们设为私有将允许访问 A 的派生类,而不是 B(朋友的)。
-
@Sergey:我误解了这个问题。
-
@Sergey:你写的 Billys 的建议不起作用。
标签: c++ templates inheritance