关于vector的问题
定义了一个结构体
typedef struct p1{
vector <int> a;
}p1;
后再定义一个vector <p1> v_p1;
vector <p1> ::iterator it_p = v_p1.begin();
请问能不能定义结构体vector <int> a中的iterator呢?如何定义?
[解决办法]
vector <**> 是一个类,它的iterator就是vector <**> ::iteraor/const_iterator.不管**是什么。
[解决办法]
vector <p1.a> ::iterator
[解决办法]
好象不行,至少STL中没有这种 "二级vector "的iterator. 唯一的办法是你自己定义一个iterator类,关键是解决跨 "parent vector "的迭代.
[解决办法]
“请问如何定义一个iterator才能遍历vector <p1> 中的所有的vector <int> a中的元素?”
必须2层循环。