码迷,mamicode.com
首页 > 编程语言 > 详细

The C++ Standard Library --- A Tutorial Reference 读书笔记

时间:2016-01-04 18:14:41      阅读:158      评论:0      收藏:0      [点我收藏+]

标签:

5.2 Smart Pointer(智能指针)

shared_ptr的aliasing构造函数,接受一个shared pointer和一个raw pointer。它允许你掌握一个事实:某对象拥有另一个对象。例如:

struct X
{
    int  a;
};

shared_ptr<X> px(new X);
shared_ptr<int> pi(px,&px->a); 

 

weak_ptr是shared-ptr的帮手,用来共享但不拥有对象,它的use_count()返回的对象是被shared_ptr拥有的次数,而且weak_ptr可以为空->expired()结果是true;lock()会产出一个shared-ptr。

 

class unique_ptr继承auto_ptr(现已不被认可),可以release()(shared-ptr不可以release是因为可能有其他shared-ptr指向它对象)。

对array,unique_ptr提供偏特化版本,而不用定义自己的deleter。例如:

std::unique_ptr<std::string[]> up(new std::string[10]);

unique_ptr与shared_ptr的deleter接口不同,它必须指明deleter的类型作为第二个template实参。

 

5.3 数值的极值

书中的例子用到 cout << boolalpha;

boolalpha,函数名称,功能是把bool值显示为true或false。

 

 

 

The C++ Standard Library --- A Tutorial Reference 读书笔记

标签:

原文地址:http://www.cnblogs.com/ph829/p/5099817.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!