我目前正在尝试定义boost图的外部属性。我使用一些捆绑的属性内部的:在boost图库中绑定std :: vector的外部属性映射
struct VertexProperties
{
int demand;
};
struct EdgeProperties
{
uint capacity;
int cost;
};
typedef adjacency_list <vecS, vecS, bidirectionalS, VertexProperties, EdgeProperties> Graph;
然而,该算法时,我需要一些外部的属性,那就是我希望能够到我的图的边/顶点映射到存储在一个std ::元素矢量,以便我可以通过运算符[](Edge e)访问它们。毫无头绪地站在boost文档的前面。似乎我需要一个property_map,但我不知道如何将这些与矢量一起使用。迄今为止我发现的唯一例子涉及从顶点到矢量的映射,但是由于顶点是无符号整数,这很简单。
我真的升压沮丧我到目前为止,我认为这将有救了我一很多的时间来执行,并通过自己的测试图表类,我真不得到这个疯狂的模板元编程的东西...
Boost.Graph是边缘无法使用;它试图过于普遍,文件很差。我建议写你自己的班级。 –
那么,我已经写了很多使用boost图的代码,我不想重写所有这些... – Exp