诗词
字典
板报
句子
名言
励志
学校
友答
搜索
首页
中考频道
作文频道
公务员频道
出国留学
医药考试
司法考试
图书频道
外语考试
建筑工程
成人高考
故事频道
教程频道
文档频道
早教
星座频道
校园
求职招聘
考研频道
职业资格
自考频道
计算机考试
财会考试
高考频道
当前位置:
首页
>
教程频道
>
开发语言
>
C++
>
stl map 有什么方法可以获取 容器所占用的内存大小解决办法
2012-05-28
stl map 有什么方法可以获取 容器所占用的内存大小RT谁知道的说下 谢谢[解决办法]探讨看实现.一般map是由
stl map 有什么方法可以获取 容器所占用的内存大小
RT 谁知道的说下 谢谢
[解决办法]
探讨
看实现.一般map是由红黑树实现的.
所以,sizeof(node)* map.size()就差不多了.
红黑树一般要三个指针和一个表示节点颜色的的bool.
所以, 如果是int.大概需要 (13+sizeof(map::value_type))*map.size().T是
实际上可能大一点点,因为还有内存对齐,一些常数大小的东西,比如比较融洽...
[解决办法]
(sizeof(key) + sizeof(value)) * map.size() + 额外的负担.
[解决办法]
探讨
引用:
看实现.一般map是由红黑树实现的.
所以,sizeof(node)* map.size()就差不多了.
红黑树一般要三个指针和一个表示节点颜色的的bool.
所以, 如果是int.大概需要 (13+sizeof(map::value_type))*map.size().T是
实际上可能大一点点,因为还有内存对齐,一些常数大小的东西,比如比较融洽...
stl中……
[解决办法]
探讨
引用:
引用:
看实现.一般map是由红黑树实现的.
所以,sizeof(node)* map.size()就差不多了.
红黑树一般要三个指针和一个表示节点颜色的的bool.
所以, 如果是int.大概需要 (13+sizeof(map::value_type))*map.size().T是
实际上可能大一点点,因为还有内存对齐,一些常数大小的东西,比如……