我知道有很多重复的,但似乎没有一个答案有帮助。
class Vertex
{
public:
string name; // Vertex name
vector<Vertex *> adj; // Adjacent vertices
int dist; // Cost
Vertex *path; // Previous vertex on shortest path
bool visited;
Vertex( const string & nm ) : name( nm )
{ reset( ); }
void reset( )
{ dist = INFINITY; path = NULL; }
};
void Graph::explore(Vertex *v)
{
//error for v.visited
//error for anything where 'v' is referenced.
v.visited = true;
int total;
for(int i = 0; i < v.adj.size(); i++)
{
cout << v.adj.name << " to ";
if (!v.visited)
{
explore(v.adj[i]);
}
}
}
阅读其他帖子后,我无法确定错误的原因。(我是 C++ 新手)。其他人能看到什么吗?该错误也在其他方法中。