C++ 继承与模板编程:深入解析与实践
1. 私有继承与类的访问控制
在 C++ 编程中,继承是一个强大的特性,它允许我们创建新的类并复用现有类的属性和方法。然而,有时候我们需要对继承的访问进行更精细的控制。以 Waste 类为例,我们不希望通过 [] 运算符对其进行随机访问,只能查看 Waste 堆的顶部卡片。为了实现这一限制,我们采用了私有继承。
class Waste: private CardGroup
{
// ...
};
这种私有继承方式将 CardGroup 的公共成员变为 Waste 的私有成员。例如, operator[] 现在是私有的,这符合我们的需求。但对于一些我们希望 Waste 向外部公开的 CardGroup 公共成员,如 isEmpty 和 print ,我们需要在 Waste 类中创建新的公共函数来调用父类的相应函数。
class Waste: private CardGroup
{
public:
Waste () {}
Waste (const Waste& other) : CardGroup (other) {}
Waste (
超级会员免费看
订阅专栏 解锁全文
970

被折叠的 条评论
为什么被折叠?



