首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

怎么知道stl 容器对象具体使用了多少内存

2012-02-09 
如何知道stl 容器对象具体使用了多少内存?vector Tvv.push_back(T1)v.push_back(T1)v.push_back(T1)

如何知道stl 容器对象具体使用了多少内存?
vector <T>   v;
v.push_back(T1);
v.push_back(T1);
v.push_back(T1);

此时如何得到   v   实际使用了多少内存?

[解决办法]
错了,这个是开辟了多少个元素空间
需要乘一下sizeof(T)
在加上vector本身所占的空间
[解决办法]
还要说明一点 capacity()* sizeof(T) 得到的是vector在堆中为保存元素分配的内存。
一个vector对象还有自己的元素,这些也要占用内存的
[解决办法]
这个问题没有太大意义。建议看《STL源码剖析》
stl的内存管理可不是这么单纯的。

热点排行