2014年1月2日

虚继承与虚基类的本质

摘要: 原文地址:http://www.cppblog.com/chemz/archive/2007/06/12/26135.html虚继承和虚基类的定义是非常的简单的,同时也是非常容易判断一个继承是否是虚继承的,虽然这两个概念的定义是非常的简单明确的,但是在C++语言中虚继承作为一个比较生僻的但是又是绝对必要的组成部份而存在着,并且其行为和模型均表现出和一般的继承体系之间的巨大的差异(包括访问性能上的差异),现在我们就来彻底的从语言、模型、性能和应用等多个方面对虚继承和虚基类进行研究。 首先还是先给出虚继承和虚基类的定义。 虚继承:在继承定义中包含了virtual关键字的继承关系; 虚基类:在虚继承 阅读全文

posted @ 2014-01-02 15:18 theCambrian.cpp 阅读(266) 评论(0) 推荐(0) 编辑

实现一个无法被继承的C++类

摘要: 原文地址:http://blog.csdn.net/lazy_tiger/article/details/2224899 一个类不能被继承,也就是说它的子类不能构造父类,这样子类就没有办法实例化整个子类从而实现子类无法继承父类。我们可以将一个类的构造函数声明为私有,使得这个类的构造函数对子类不可见,那么这个类也就不能继承了。但是,这引出一个问题,客户程序岂不是也无法实例化这个类了?OK,让我们参考一下Singleton模式,用一个static函数来帮助创建这个类的实例,问题就解决了! 1 class CParent 2 { 3 private: 4 CParent(int v){m_v = . 阅读全文

posted @ 2014-01-02 14:12 theCambrian.cpp 阅读(224) 评论(0) 推荐(0) 编辑

导航