当前位置:  技术问答>linux和unix

STL map在使用过程中用了clear为什么在Top as中还是看不到内存释放呢?

    来源: 互联网  发布时间:2016-05-08

    本文导语:  STL map在使用过程中用了clear为什么在Top as中还是看不到内存释放呢? 有没有人遇到类似的问题? | 所谓内存池。 不需要马上释放啊,如果接下来又要有内存分配,就不需要从系统申请了。 ...

STL map在使用过程中用了clear为什么在Top as中还是看不到内存释放呢?

有没有人遇到类似的问题?

|
所谓内存池。
不需要马上释放啊,如果接下来又要有内存分配,就不需要从系统申请了。

|
基于性能考虑,STL内部实现了小片内存的内存池管理技术。如果需要的内存较小,则从内存池获取,否则malloc去获得大片内存。所以clear后,只有额外申请的大片内存才会被真正释放,小片内存则回收到内存池。

|
clear 只是将MAP中的NODE给释放了,那些NODE只是保存的一个指针吧。 指针指向的内存块如果是手动分配的则
就需要自己DELETE

|
LZ可以了解一下allocator的概念。
STL中分配内存和你自己new不是一个概念。

    
 
 

您可能感兴趣的文章:

 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 关于redhat Linux ,g++下stl库map内存释放的问题
  • C++ STL Bitsets构造函数及成员函数解释及代码示例
  • SGI的STL库 SGI STL
  • c++ stl容器set成员函数介绍及set集合插入,遍历等用法举例
  • 在UNIX中可以包含STL算法吗?
  • STL vector+sort排序和multiset/multimap排序比较
  • linux完全支持C++STL嗎?
  • c++ stl容器vector删除(erase),遍历等基本用法介绍及头文件
  • 是不是只有C++才可以使用STL?
  • C++ STL标准模板库类String成员详细列表参考及示例代码
  • STL 在 UNIX 多线程 中不能用?
  • c++ stl栈容器stack的pop(),push()等用法介绍及头文件
  • Linux系统下如何获取STL帮助
  • C++ stl队列Queue用法介绍:删除,插入等操作代码举例
  • STL实现 EASTL
  • C++ STL库中priority_queue介绍,成员函数说明及priority_queue具体用法举例
  • 在COMPAQ TRUE64 UNIX用C++编程,使用Gcc,支不支持stl?
  • c++ stl multimap基本操作使用技巧详细介绍
  • 哪儿能下载aix4.3的c++ stl库
  • c++ STL关联式容器Map成员函数介绍及查找(find()),插入(insert()),删除(erase())等操作代码举例
  • 请问在linux下面编程怎样查询stl类的成员函数
  • 双向队列Deque 类成员函数列表参考(c++ STL 容器)
  • 关于stl源代码


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3