如何测量Boost图形使用的内存?

时间:2012-06-22 18:40:24

标签: c++ memory boost boost-graph

我有一个图表定义如下(使用boost):

struct NodeData{ /*...*/ };
struct EdgeData{ /*...*/ };
typedef adjacency_list<setS, setS, undirectedS, NodeData, EdgeData> MyGraph;
MyGraph G;

此图形以迭代方式更新(通过添加/删除一些边/顶点)。在每次迭代中,我想评估此图G占用的内存空间。我该怎么做?如果我计算V =“NodeData的大小”并且E =“EdgeData的大小”并且在每次迭代时图形使用的内存将与以下内容成比例,那么它是否有意义:nbr_vertices * V + nbr_edges * E?

1 个答案:

答案 0 :(得分:0)

您可以尝试使用堆状态报告功能:http://msdn.microsoft.com/en-us/library/wc28wkas%28v=vs.80%29.aspx