码迷,mamicode.com
首页 >  
搜索关键字:raii    ( 121个结果
【C++】智能指针详解(一):智能指针的引入
智能指针是C++中一种利用RAII机制(后面解释),通过对象来管理指针的一种方式. 在C++中,动态开辟的内存需要我们自己去维护,在出函数作用域或程序异常退出之前,我们必须手动释放掉它,否则的话就会引起内存泄漏. 例如:我们用指针变量来创建对象时,需要手动来删除它 事实上,即使我们非常谨慎,但有时候 ...
分类:编程语言   时间:2017-03-31 21:47:39    阅读次数:176
RAII
全称是“Resource Acquisition is Initialization”,翻译为资源获取就是初始化。 其实就是利用栈上的局部对象在离开作用域时会自动释放的原理,在临时对象创建时初始化资源,或者将资源交给对象管理,当临时对象析构时释放资源,因为临时对象在离开其作用时会自动析构,也就会自动 ...
分类:其他好文   时间:2017-02-21 21:47:27    阅读次数:187
读书笔记 effective c++ Item 14 对资源管理类的拷贝行为要谨慎
1. 自己实现一个资源管理类 Item 13中介绍了 “资源获取之时也是初始化之时(RAII)”的概念,这个概念被当作资源管理类的“脊柱“,也描述了auto_ptr和tr1::shared_ptr是如何用堆资源来表现这个概念的。然而并不是所有资源都是在堆上创建的,对于这种资源,像auto_ptr和t ...
分类:编程语言   时间:2017-02-19 11:04:36    阅读次数:175
读书笔记 effective c++ Item 13 用对象来管理资源
1.不要手动释放从函数返回的堆资源 假设你正在处理一个模拟Investment的程序库,不同的Investmetn类型从Investment基类继承而来, 进一步假设这个程序库通过一个工厂函数(Item 7)来给我们提供特定Investment对象: 正如注释所表述的,当createInvesmen ...
分类:编程语言   时间:2017-02-18 09:45:01    阅读次数:195
enote笔记法使用范例(2)——指针(1)智能指针
要知道什么是智能指针,首先了解什么称为 “资源分配即初始化” what RAII:RAII—Resource Acquisition Is Initialization,即“资源分配即初始化” 在《C++ Primer》这样解释的,“通过定义一个类来封装资源的分配和释放,可以保证正确释放资源” 核心 ...
分类:其他好文   时间:2017-01-04 20:04:57    阅读次数:138
删除docker的运行目录出错
1. 错误类型 1.1. rm: cannot remove '/var/lib/docker/aufs': Device or resource busy 2. 过程 2.1. 用docker rmi 命令删除了全部镜像,准备一切重头再来,发现有些残留目录。 2.2. 然后只能删掉所有运行目录然后 ...
分类:其他好文   时间:2016-11-09 12:27:15    阅读次数:2098
auto_ptr浅析
auto_ptr是C++标准库中(<utility>)为了解决资源泄漏的问题提供的一个智能指针类模板(注意:这只是一种简单的智能指针) auto_ptr的实现原理其实就是RAII,在构造的时候获取资源,在析构的时候释放资源,并进行相关指针操作的重载,使用起来就像普通的指针。 std::auto_pt ...
分类:其他好文   时间:2016-09-27 15:01:00    阅读次数:196
智能指针
RAII(ResourceAcquisitionIsInitialization)资源分配即初始化,定义一个类来封装资源的分配和释放,在构造函数完成资源的分配和初始化,在析构函数完成资源的清理,可以保证资源的正确初始化和释放。------------------------------------------------------------------------..
分类:其他好文   时间:2016-08-26 23:02:44    阅读次数:198
如何分析程序的时间消耗
总结一些常用的方法,思考如何分析一个程序的时间消耗。 1. Trace Log 这个是大家最常用,也是最简单和有效地方法。通常是在函数的开始和结束的位置加入Log, 最后通过Log记录时间统计函数的时间消耗。 有时嫌2次log太麻烦,我们可以通过RAII进行封装: class CTimeCostDe ...
分类:其他好文   时间:2016-08-22 02:02:36    阅读次数:264
RAII
转载:http://www.jellythink.com/archives/101 什么是RAII? RAII是Resource Acquisition Is Initialization的简称,是C++语言的一种管理资源、避免泄漏的惯用法。利用的就是C++构造的对象最终会被销毁的原则。RAII的做 ...
分类:其他好文   时间:2016-08-12 21:22:05    阅读次数:214
121条   上一页 1 ... 3 4 5 6 7 ... 13 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!