C++中如何使类不能继承

ubuntu_fedora 15 0 PDF 2021-01-16 18:01:21

如果大家熟悉java的话应该知道java中有一种类不能被继承,那是final类。这种类有很多用处,尤其是在大的项目中控制类的继承层次。使子类数量不至于爆炸。在使用了多继承的类层次中这也是防止出现菱形继承层次结构的一个好办法。要实现一个不能被继承的类有很多方法。 主要的思路是使子类不能构造父类的部分,这样子类没有办法实例化整个子类。这样限制了子类的继承。所以我们可以将父类的构造函数声明成为私有的,但是这样父类不不能实例化。我想可以添加一个静态帮助函数来进行构造。虽然这样很简陋。但是这的确是一种解决方法。 可是如果只有这个方法能够解决,那么C++实在是太不灵活了。而且这也不值得写一

用户评论
请输入评论内容
评分:
暂无评论