c++基础(3.9)迭代器

c++基础(3.9)迭代器

c++基础(3.9)迭代器

迭代器类型可使用解引用操作符(*)来访问迭代器所指的元素:

eg:

    vector<int> ivec(10,1);

    vector<int>::iterator iter = ivec.begin();

    *iter = 0;

迭代器使用自增操作符(++)向前移动迭代器指向容器中下一个元素(非加1)


由于end操作返回的迭代器不指向任何元素,因此不能对它进行解引用或者自增操作


c++基础(3.9)迭代器

例子:

for ( vector<int>::size_type ix = 0 ;  ix != ivec.size() ;  ++ix ) 

    ivec[ix] = 0;

for ( vector<int>::iterator iter = ivec.begin() ;  iter != ivec.size() ; ++iter )

    *iter = 0;


c++基础(3.9)迭代器

c++基础(3.9)迭代器

c++基础(3.9)迭代器

c++基础(3.9)迭代器



c++基础(3.9)迭代器

c++基础(3.9)迭代器


c++基础(3.9)迭代器