不能被继承的类
来源:互联网 发布:无线网卡隐藏mac地址 编辑:程序博客网 时间:2024/06/05 02:37
题目:用C++设计一个不能被继承的类。
分析:
一个类被继承后,在生成派生类对象时,派生类会主动调用父类的构造函数,所以如果父类的构造函数被设置成私有时,派生类的对象就无法构建。
一、直接将构造函数设为私有函数
class SealedClass{public: static SealedClass* GetInstance() { return new SealedClass(); } static void DeleteInstance( SealedClass* pInstance ) { delete pInstance; }private: SealedClass() {} ~SealedClass() {}};class test : public SealedClass{};int main( void ){// test t; return 0;}
2.虚拟继承
template <typename T>class MakeSealed{ friend T;private: MakeSealed() {} ~MakeSealed() {}};class SealedClass2 : virtual public MakeSealed<SealedClass2>{public: SealedClass2() {} ~SealedClass2() {}};class Try : public SealedClass2{};
阅读全文
0 0
- 不能被继承的类
- 不能被继承的类
- 不能被继承的类
- 不能被继承的类
- 不能被继承的类
- 不能被继承的类
- 不能被继承的类
- 不能被继承的类
- 不能被继承的类
- 不能被继承的类
- 不能被继承的类
- 不能被继承的类
- 不能被继承的类
- 不能被继承的类
- 不能被继承的类
- 不能继承的类
- 不能继承的类
- c++写不能被继承的类
- Unity Shader:Waveform波形(1)-用正弦函数做闪烁效果
- poj1836 Alignment(Dp)
- Java基础总结-常用类
- JS的时间对象常用方法
- html 使表格随着内容自动适应宽度
- 不能被继承的类
- 欢迎使用CSDN-markdown编辑器
- Port WPA supplicant to RTEMS-libbsd
- 面试试题简析之综合分析现象类(1)
- 2017/8/13 星期天
- AngularJS--购物车全选/取消全选功能实现
- 计算会员折扣
- 关于IDEA中创建springboot+security+jpa
- maven的java web项目启动找不到Spring ContextLoaderListener的解决办法