3

我有一个定义如下的图表(使用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 是否有意义?

4

1 回答 1

0

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

于 2012-06-22T20:25:05.777 回答