Unordered_map大小(以字节为单位)

时间:2014-02-14 19:55:04

标签: c++

我有一个无序的地图,我想测量它在我的程序中消耗了多少内存。 无序地图是这样的:

Key =>  int, int

Value => int, bool

我想以字节为单位找出地图的大小。 我正在使用.size()函数来查找容器中的元素数(map中的行数)。我正在计算像这样的无序地图的大小

unordermap.size()  * (2bytes+2bytes+2bytes+1byte)

这是估计unordermap以字节为单位消耗的内存的正确方法吗?

1 个答案:

答案 0 :(得分:0)

数据结构的内存占用量是堆栈上的大小+免费存储中的大小。您可以重新定义operator new / delete以添加分配的大小会计,然后执行简单的算术运算。你也可能需要为malloc / free做这件事。