几个特殊对象策略

——1.7Policy Class的析构函数
    1.避免一个对象被delete销毁
    把析构函数做成protected。
    由编译器保证
    由于析构函数被保护,只要派生类才可以摧毁这个对象,外界对这个对象的delete调用就会被编译器阻止。
    2.避免一个对象被创建
    把构造函数非公有化。
    由编译器保证
    这种对象的创建要借助自身的静态方法(构造函数私有化或保护化)或者依靠子类(构造函数保护化)。
    3.阻止一个类被继承
    把构造函数私有化。
    由编译器保证
    继承私有化构造函数的类可以被编码,但是无法创建对象。
    4.避免一个类被继承
    把类做成局部的
    由可见范围保证
    如果开发者想一个类不被继承,那最好的办法是不让别人看它,局部类有这个特性。作用域外无法看见这个类,自然五继承可言。
    5.对象必须被继承
    有纯虚函数就可以。
    编译器保证。
    带有纯虚函数的类是无法被创建对象的,所以如果继承的化,无法创建实例。
    6.对象只有一个
    单件或做成静态。
    前者单件本身保证,后者语言规则保证。
    其实如果深究的化,这两种方式一个意思。 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值