Aha!设计模式(41)-单例(7)

2019-04-13 13:29发布

代码示例   《设计模式》书中的代码示例我们已经在已经在前面的文章中给出过,虽然类名不同,但是内容是一回事,所以这里不再重复了。这里给出一个更加彻底的引入C++11新特性的代码示例。首先是头文件: 和之前介绍的例子相比,代码中增加了shared_ptr的使用。接下来是实现部分的代码:   由于使用了静态变量(不是静态数据成员),内存管理已经很简单,并没有因为引入了shared_ptr而变得更加简单。但是通过这部分代码,使用者可以用之前介绍的示例代码同样的方式使用shared_ptr管理变量,而不是只能在这里继续使用通常的指针变量。   作者观点   今天代码中使用了C++11的新特性:shared_ptr。这件事从单例模式本身来讲好像并没有什么特别的好处,但是设想一下:如果代码其他的部分都是使用shared_ptr来管理内存,只有这里不行,那是多么痛苦的一件事。   这种风格统一本身就具有很大的意义。     觉得本文有帮助?请分享给更多人。 阅读更多更新文章,请扫描下面二维码,关注微信公众号【面向对象思考】