C++嵌套类以及智能指针实现桥接模式

C++嵌套类就是在一个类的内部定义另外一个类。嵌套类只能在外围类中使用。

这样做的目的就是为了隐藏细节信息,这样就和桥接模式联系起来了,因为桥接模式的本意也就是将抽象和抽象方法的具体实现相分离,如果具体实现代码量不大,而且只是这个类中需要使用的话,就可以使用嵌套类来完成。

嵌套类对象的创建如果使用new和delete的话,还得关注何时销毁这个对象,所以可以使用boost库中的shared_ptr来代替。

具体代码如下:

class Service {
private:
	class ServiceImpl_ {
	public:
		void doSomething() {
			cout << "impl do work.........." << endl;
		}
	};
	boost::shared_ptr<ServiceImpl_> impl_;

public:
	Service() {
		impl_ = boost::make_shared<ServiceImpl_>();
	}

	void doService() {
		impl_->doSomething();
	}

};

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值