第一节 条款13中讲到“资源取得的时机便是初始化时机”并由此引出“以对象管理资源”的概念。通常情况下使用std中的auto_ptr(智能指针)和tr1::shared_ptr(引数智能指针)作为管理资源的对象。事实上,这种管理方法十分有效。但是,auto_ptr和tr1::shared_ptr只.....
分类:
其他好文 时间:
2014-11-17 15:25:48
阅读次数:
179
有空看看《exceptional C++》 C++11对异常处理是否有增强还需要了解一下。 以下几篇参考: [C++异常处理][1]——通过例子说明。深入浅出~ [C++的异常处理][2]——全面,各个细节基本都说了。不过auto_ptr在C++11...
分类:
编程语言 时间:
2014-11-06 02:22:09
阅读次数:
211
首先我们看看scoped_ptr的基本使用,包括了swap(),get(),reset()的使用,重要的提醒是作用域结束的时候会自己主动析构,无需手动的释放资源:#include#includeusing namespace std;using namespace boost;struct p...
分类:
其他好文 时间:
2014-11-02 12:14:47
阅读次数:
200
这段代码:__try{}__except(GetErrorCode()){} 可以捕获空指针,但是包围在其中的代码不能有自带析构函数的对象。c++ 11 标准里面的auto_ptr关键字,有此关键字的指针发生的异常能被try{}catch(...){} 捕获,但是VC不支持auto_...
分类:
编程语言 时间:
2014-11-01 00:55:19
阅读次数:
211
看到文章里的同学留言说到unique_ptr,这两天看了一下cplusplus提供的reference才知道这个东西是c++11的新特性,对c++11的新特性不是很了解,花时间了解了下unique_ptr,之前有写过auto_ptr的分析,这里就和auto_ptr对比下来看。unique_ptr.....
分类:
其他好文 时间:
2014-10-25 10:28:05
阅读次数:
1948
auto_ptr是当前C++标准库(STL)中提供的一种智能指针,包含头文件 #include 便可以使用。auto_ptr 能够方便的管理单个堆内存对象,下面贴出SGI中的auto_ptr源码。 1 /* 2 * Copyright (c) 1997-1999 3 * Silicon...
分类:
其他好文 时间:
2014-10-20 09:58:34
阅读次数:
290
auto_ptr是常用的智能指针,其实现很简单,源代码也很短,但是中间有个代理类auto_ptr_ref用的很巧妙,值得学习。...
分类:
其他好文 时间:
2014-09-27 12:54:09
阅读次数:
183
智能指针实际上是一个类(class),里面封装了一个指针.它的用处是啥呢?指针与内存说到指针自然涉及到内存.我们如果是在堆栈(stack)中分配了内存,用完后由系统去负责释放.如果是自定义类型,就会自动的去调用你的析构函数.但如果是在堆(heap)中分配了内存,也就是用malloc或者new.那只能...
分类:
其他好文 时间:
2014-09-24 13:12:46
阅读次数:
131
对于auto_ptr比较全面的总结,特别是对auto_ptr的源码解析。...
分类:
编程语言 时间:
2014-09-22 18:06:13
阅读次数:
220