59 不能被继承的类
来源:互联网 发布:淘宝男生裤子 编辑:程序博客网 时间:2024/05/22 22:37
59.不能被继承的类。
题目:用 C++设计一个不能被继承的类。
/*59.不能被继承的类。题目:用 C++设计一个不能被继承的类。1.不能被继承?按照继承的理论知识分析,我们只要把类的构造函数设置为私有的,即可。 子类就没有办法访问基类的构造函数,从而就阻止了进行子类构造对象的任务实现,也就达到了不可继承的目的我们怎样才能得到该类的实例呢?我们可以通过定义静态来创建和释放类的实例。 但是这个类我们在其它地方也无法使用。 */ class FinalClass1 { public: static FinalClass1* GetInstance() { return new FinalClass1; } static void DeleteInstance( FinalClass1* pInstance) { delete pInstance; pInstance = 0; } private : FinalClass1() {} ~FinalClass1() {} }; /*参考:http://blog.csdn.net/yushuai007008/article/details/7438362 虚继承的一个特征就是虚基类的构造函数由最终子类负责构造!通过限制构造函数,我们就达到了限制继承的目的*/ #include"stdafx.h"#include<iostream>using namespace std;template<class T> //应用模板class CFinalClassMixin{friend T;private:CFinalClassMixin(){} ~CFinalClassMixin(){}};class CParent:virtual public CFinalClassMixin<CParent> //虚继承{public: CParent(){} ~CParent(){}};class CChild:public CParent{}; //子类继承父类int main(int argc, char* argv[]){CParent a; // 可以构造CChild b; //不能构造return 0;}
0 0
- 59 不能被继承的类
- 不能被继承的类
- 不能被继承的类
- 不能被继承的类
- 不能被继承的类
- 不能被继承的类
- 不能被继承的类
- 不能被继承的类
- 不能被继承的类
- 不能被继承的类
- 不能被继承的类
- 不能被继承的类
- 不能被继承的类
- 不能被继承的类
- 不能被继承的类
- 不能被继承的类
- 不能继承的类
- 不能继承的类
- 58 从尾到头输出链表 三种方法
- 单例模式应用场景
- 聚类和分类的区别
- android应用开发详解(十六)-----------------E_mail
- 奋斗的小蜗牛
- 59 不能被继承的类
- IOS网络篇11之Reachability网络检测(网络状态 运营商 网络制式)
- Hackerrank Palindrome Index
- 关于子函数给主函数指针分配内存
- HDU 1007 Quoit Design 分治法求最近点对
- mysql的表的导入与导出
- struct.pack unpack
- 驱动,设备和总线分块编程方式
- 常用的HTTP状态码