C++ 如何使用指针访问向量元素的各个元素?

C++ 如何使用指针访问向量元素的各个元素?,c++,vector,narray,C++,Vector,Narray,我想对一个n-数组树进行预排序遍历。我的树节点结构包含一个向量指针成员。那么,我如何迭代地调用成员呢 我想做一些类似的事情: for(i in node->children){ cout<<i; } 对于节点*子节点:节点->子节点{ //对孩子做点什么 } 那么,您当前的代码允许Node*c:Node->children{cout@Botje为什么他需要实现begin和end?Node->children是一个向量。如果OP真的想为Node&c:Node->chil

我想对一个n-数组树进行预排序遍历。我的树节点结构包含一个向量指针成员。那么,我如何迭代地调用成员呢

我想做一些类似的事情:

for(i in node->children){
    cout<<i;
}
对于节点*子节点:节点->子节点{ //对孩子做点什么 }
那么,您当前的代码允许Node*c:Node->children{cout@Botje为什么他需要实现begin和end?Node->children是一个向量。如果OP真的想为Node&c:Node->children{…}或者甚至为Node&c:Node{…}编写代码呢?指针向量通常不适合使用。@Botje如果OP想要您的第一种可能性,则有必要更改Node::children,使其具有类型vector而不是vector。如果OP想要您的第二种选项,则有必要为类Nod实现适当的迭代器类型以及开始和结束成员函数E
class Node {
public:
    int val;
    vector<Node*> children;

    Node() {}

    Node(int _val, vector<Node*> _children) {
        val = _val;
        children = _children;
    }
};