struct node {
char name_;
vector<node*> nbs_;
};
node a, b, c;
a.name_ = 'a';
b.name_ = 'b';
c.name_ = 'c';
a.nbs_.push_back(&b);
a.nbs_.push_back(&c);
for (vector<node*>::iterator i = a.nbs_.begin(); i != a.nbs_.begin(); i++) {
cout << (*i)->name_;
}
为什么上述代码不起作用。它什么都不打印。我想要它打印节点b和c的名字。
答案 0 :(得分:13)
i != a.nbs_.begin();
应该是
i != a.nbs_.end();