比如这种情况
class Node {
public:
int index;
std::vector<Edge> outs;
};
class Edge {
public:
double weight;
Node vertex;
};
ringa_lee2017-04-17 13:15:20
先聲明一下。
#include<vector>
class Edge;
class Node {
public:
int index;
std::vector<Edge> outs;
};
class Edge {
public:
double weight;
Node vertex;
};
嚴格來說 Node 裡面應該用 Edge 的指標或引用,或明確支援不完整型別的容器。不過一般 vector 都是基於指標實現的,所以沒有問題。