码迷,mamicode.com
首页 >  
搜索关键字:智能指针    ( 834个结果
C++——几种简单的智能指针
最简单的智能指针就是将指针封装在类里,同时将该类的复制与赋值禁用,也就是使该类失去值语义。实现代码如下: 1 #ifndef SMART_PTR_H 2 #define SMART_PTR_H 3 #include 4 5 6 template 7 class SmartPtr 8 { 9 ...
分类:编程语言   时间:2014-10-09 01:07:37    阅读次数:327
Linux组件封装(四)使用RAII技术实现MutexLock自动化解锁
我们不止一次写过这种代码: { mutex_.lock(); //XXX if(....) return; //XXX mutex_.unlock(); } 显然,这段代码中我们忘记了解锁。那么如何防止这种情况,我们采用和智能指针相同的策略,把加锁和解锁的过程封装在一个对象中。 实现“对象生命期”等...
分类:系统相关   时间:2014-10-07 21:53:24    阅读次数:215
C++学习之模板应用 ---array、smartptr、stack
有array(数组)、smartptr(智能指针)、stack(栈);一、array:1、我们实现了指针访问和下标访问。C++中指针访问常用迭代器来代替。2、这里我们也揭示了 size_type、iterator、[] 、begin()、end()、size()的真实面目;Array.hpp 1 #...
分类:编程语言   时间:2014-10-02 02:02:52    阅读次数:292
C++11的一些特性
1.断言是将一个需要为真的表达式放在语句中,在debug模式下检查一些逻辑错误的参数,C++中使用assert需要使用或者头文件。有函数定义如下: voidfun(int a[],int n) { assert(n>0); //dosomething; } 这样就可以检查n的情况,如果遇到这种情况,程序会调用abort()函数而终止。 C++11提供了static_assert断言,...
分类:编程语言   时间:2014-10-02 01:46:02    阅读次数:258
Boost源码学习---weak_ptr.hpp
weak_ptr是辅助shared_ptr的智能指针。就像它的名字一样,是个“弱”指针;仅有几个接口,仅能完成很少工作,来辅助shared_ptr...
分类:其他好文   时间:2014-09-29 22:38:41    阅读次数:196
Boost源码学习---shared_ptr.hpp
shared_ptr源代码的概略介绍。...
分类:其他好文   时间:2014-09-28 10:30:41    阅读次数:306
Boost源码学习---scoped_ptr.hpp
scoped_ptr是一个智能指针,包装了指向堆上内存的指针。它限制了指针的使用权,不允许转让,不支持比较操作。...
分类:其他好文   时间:2014-09-28 00:44:00    阅读次数:197
Boost源码学习---
scoped_array功能类似scoped_ptr,其管理new int[]类似数组的指针。...
分类:其他好文   时间:2014-09-28 00:42:50    阅读次数:217
简单的单例类和智能指针
1.一个简单的单例类: class Singleton { public: static Singleton *getInstance() { if(pInstance_ == NULL){ mutex_.lock(); if(pInstance_ == NULL){ ...
分类:其他好文   时间:2014-09-27 14:43:19    阅读次数:132
C/C++ 使用mmap/munmap函数分配内存
在C/C++ 中常用的内存分配和管理的方式有很多,如智能指针, STL容器, new/delete, malloc/free, brk, sbrk等等,最近研究了一下Unix比较底层的一种内存管理方式mmap/munmap,需要完全自己来维护分配的虚拟内存,没有任何其他辅助的数据结构来帮助维护内存空间。 一、在终端里输入 man mmap 可以查看此函数的API文档,此函数的具体描述如下: v...
分类:编程语言   时间:2014-09-27 13:55:09    阅读次数:799
834条   上一页 1 ... 70 71 72 73 74 ... 84 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!