随笔分类 - Boost
摘要:preface: 1、传统C++内存管理中可能出现的问题:内存泄露、野指针、访问越界;相关解决方案:智能指针 std::auto_ptr,不能完全解决内存管理中出现的问题; 2、关于smart_ptr库的概述: 2.1、C++程序员通常采用RAII(资源获取即初始化)机制管理内存资源,在使用资源的类的构造函数中申请资源,最后在析构函数中释放资源;如果对象的声明方式是在栈上,RAII机制可以工作正常,但是如果对象是用new操作符在堆上创建的,那么它的析构函数不会自动的调用,需要手动delete,然而即便是C++熟手,也很容易忘记; 2.2、智能指针实践了代理模式,代理了原始的“裸...
阅读全文
摘要:一、背景 C++缺乏对时间和日期的处理能力,不得不求助于C,使用笨拙的结构和函数(struct tm,time())。现在,Boost使用timer和date_time解决了这个问题。二、timer简介 1、timer是一个很小的库,提供简易的度量时间和进度显示功能,可以用于性能测试等需要计时的任务。它包含三个组件:分别是 计时类 timer、progress_timer和进度指示类progress_display 2、组件介绍作用需包含的头文件其他说明timer测量时间的流逝,提供毫秒级别的计时精度和操作函数#include<boost/timer.hpp>using names
阅读全文
摘要:Boost程序库总论一、关于Boost 1、功能强大,构造精巧,跨平台,开源,免费; 2、采用类似于STL的编程范式,但是没有STL那么晦涩难懂,代码格式优美清晰,易于阅读; 3、该库的每个组件都是经过严格审查和验证,具有很高的工业强度; 4、相关网站:www.boost.org; 5、Boost库的大部分组件(近90%)不需要编译,直接包含头文件即可; 6、文件后缀:".hpp" 说明: 6.1、与普通的C头文件(*.h)区分; 6.2、使Boost库不需要预先编译,直接引入工程即可; 6.3、C++编译器的限制:很多编译器尚不支持C++标准提出的模板的分离编译...
阅读全文

浙公网安备 33010602011771号