C++ 在类std::vector中使用迭代器
我有一节课C++ 在类std::vector中使用迭代器,c++,class,iterator,stdvector,C++,Class,Iterator,Stdvector,我有一节课 class node{ public: char name[5]; int number } 我将一些节点添加到名为node\u list vector <node*> node_list; 编译后,我使用Visual Studio跟踪iter,它是内存的地址,它像指针吗?如果我想在节点中获取number或name[5],我应该怎么做?使用基于范围的for循环: for (auto &x : node_list) { cout <
class node{
public:
char name[5];
int number
}
我将一些节点添加到名为node\u list
vector <node*> node_list;
编译后,我使用Visual Studio跟踪
iter
,它是内存的地址,它像指针吗?如果我想在节点中获取number
或name[5]
,我应该怎么做?使用基于范围的for循环:
for (auto &x : node_list) {
cout << x->number;
}
for(自动&x:节点列表){
库特数;
}
或:
for(自动iter=node_list.begin();iter!=node_list.end();++iter){
库特数;
}
注:
(*iter)
类型为节点*
与外部for循环对话。任何时候你有代码,你不确定它,坐下来,并通过逻辑。如果说得通的话,它可能是好的。如果没有意义,用你的橡皮鸭讨论一下你的选择,看看哪些选择是有意义的。
for (auto &x : node_list) {
cout << x->number;
}
for (auto iter = node_list.begin(); iter != node_list.end(); ++iter) {
cout << (*iter)->number;
}