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;
}