STL:: allocator之deallocate & destory的区别与联系
来源:互联网 发布:c语言 最大公约数 编辑:程序博客网 时间:2024/06/08 17:00
c++中的allocator是标准库中的一个类,负责内存分配管理。
下面是《STL源码剖析》中一个简单allocator实现的部分源代码:
deallocate:
template <class T>inline void _deallocate(T* buffer){::operator delete(buffer); //为什么不用 delete [] ? ,operator delete 区别于 delete //operator delete 是一个底层操作符}
destory:
template <class T>inline void _destory(T *ptr){ptr->~T();}
destory负责调用类型的析构函数,销毁相应内存上的内容(但销毁后内存地址仍保留)
deallocate负责释放内存(此时相应内存中的值在此之前应调用destory销毁,将内存地址返回给系统,代表这部分地址使用引用-1)
参考:《STL源码剖析》 P44-45;
《C++ Primer》 P428-429.
阅读全文
0 0
- STL:: allocator之deallocate & destory的区别与联系
- STL,ATL,WTL的联系与区别
- STL,ATL,WTL的联系与区别
- STL,ATL,WTL的联系与区别
- STL,ATL,WTL的联系与区别
- STL,ATL,WTL的联系与区别
- STL之allocator
- STL之allocator
- stl分析之allocator
- STL的默认allocator
- 《STL源码剖析》之配置自己简单的allocator
- MFC、WTL 、ATL、STL联系与区别
- MFC、WTL 、ATL、STL联系与区别
- 也谈stl的allocator
- 实现自定义的 STL allocator
- STL 简单 allocator 的实现
- STL Allocator
- STL-allocator
- 计算机的组成和计算机内存
- 原码、反码、补码的快速理解
- 关于Mybatis中mapper.xml的传入参数简单技巧
- 获取系统消息工具类
- 文章标题
- STL:: allocator之deallocate & destory的区别与联系
- java中关于Collection和Map相关的类&接口之间的关系
- Storm:流式处理框架之特性与应用场景
- Postman用法简介
- Html-浅谈如何正确给table加边框
- opencv文档——opencv documentation网址
- PSTN与VoIP
- vim多窗口使用技巧
- 云服务器安装带gui的ubuntuServer并实现远程访问