转自:http://blog.csdn.net/xt_xiaotian/article/details/5714477-------------------------------------------------------------------------------------------...
分类:
编程语言 时间:
2015-03-17 00:45:01
阅读次数:
169
C++面试题(四)——智能指针的原理和实现tanglu2004http://blog.csdn.net/worldwindjp/ C++面试题(一)、(二)和(三)都搞定的话,恭喜你来到这里,这基本就是c++面试题的最后一波了。 1,你知道智能指针吗?智能指针的原理。 2,常用的智能指针。...
分类:
编程语言 时间:
2015-03-17 00:42:11
阅读次数:
182
感觉auto_ptr还是存在一些不足的,效率十分低,而且丢失了一般指针方便常用的操作,如++,--等,auto_ptr只重载了=,*,->这几个操作符,所以使用很不方便。
一、说明:int *a = NULL;delete a;//do nothing
应此auto_ptr的析构函数是这样子的:
~auto_ptr()
{ // destroy the...
分类:
其他好文 时间:
2015-03-15 09:36:50
阅读次数:
149
为什么auto_ptr不可以作为STL标准容器的元素
假如有这样的一段代码,是否能够运行?
?
1
2
3
4
5
6
7
8
9
int
costa_foo()
{
vector
> v(10);
...
分类:
其他好文 时间:
2015-03-14 18:40:43
阅读次数:
129
auto_ptr是当前C++标准库中提供的一种智能指针,或许相对于boost库提供的一系列眼花缭乱的智能指针, 或许相对于Loki中那个无所不包的智能指针,这个不怎么智能的智能指针难免会黯然失色。诚然,auto_ptr有这样那样的不如人意,以至于程序员必须像使用”裸“指针那样非常小心的使用它才能.....
分类:
其他好文 时间:
2015-03-14 10:59:22
阅读次数:
166
悬垂指针:1:提出的原因:请看下面的代码片段:int *p=NULL;void main(){ int i=10;p=&i; cout #include #include #include using namespace std;int main(void) { ch...
分类:
其他好文 时间:
2015-03-13 18:25:33
阅读次数:
260
boost::intrusive_ptr一种“侵入式”的引用计数指针,它实际并不提供引用计数功能,而是要求被存储的对象自己实现引用计数功能,并提供intrusive_ptr_add_ref和intrusive_ptr_release函数接口供boost::intrusive_ptr调用intrusi...
分类:
其他好文 时间:
2015-03-10 17:09:18
阅读次数:
149
第12章 动态内存
1. 申请并使用shared_ptr. P400
2. shared_ptr计数. P402
赋值, 拷贝, 向函数传递一个智能指针, 或函数返回一个智能指针都会增加当前智能指针的计数.
3. 不同对象间利用智能指针共享数据的例子.
4. 使用new来动态申请内存. P407
默认情况下...
分类:
编程语言 时间:
2015-03-09 10:57:10
阅读次数:
133
面对复杂如操作系统的一个工程,我们应该如何学习,学习什么,从哪里入手?下面是一篇学习指引:
关于Chromium code base,有许多需要学习的,宏观层次比如:进程及其相互之间的关系,IPC如何工作,URL加载流程;微观层次比如:智能指针,消息循环,线程用法,线程模型,string等的使用指引。
学习Chromium的“行为处事”:
编码风格:http://www.chromium.o...
分类:
其他好文 时间:
2015-03-06 09:45:06
阅读次数:
317
这篇文章主要介绍 boost中的智能指针的使用。(转自:http://www.cnblogs.com/sld666666/archive/2010/12/16/1908265.html) 内存管理是一个比较繁琐的问题,C++中有两个实现方案: 垃圾回收机制和智能指针。垃圾回收机制因为性能等原因不被....
分类:
其他好文 时间:
2015-03-03 13:32:29
阅读次数:
189