顺序容器(迭代器)的C语言复习(9)如何改写为一个长尾词的?

2026-04-16 21:453阅读0评论SEO问题
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计550个文字,预计阅读时间需要3分钟。

顺序容器(迭代器)的C语言复习(9)如何改写为一个长尾词的?

一、使用指针遍历数组我们可以使用指针来遍历数组,就像使用指针一样,我们可以使用迭代器来遍历容器。

二、迭代器常用运算

1.*ite:返回迭代器所指元素的引用(ite是一个迭代器);

2.ite-mem:获取迭代器中指向的元素。

一、像使用指针可以遍历数组一样,我们可以使用迭代器来遍历容器;

二、迭代器常用运算:

1.*ite返回迭代器所指向的元素的引用(ite是一个迭代器);

顺序容器(迭代器)的C语言复习(9)如何改写为一个长尾词的?

2.ite->mem:获取迭代器中指定元素名为mem的成员,等价于(*item).mem;

3.++ite/ite++:给ite加1,指向下一个元素;同--

4.ite1==ite2,比较两个迭代器是否相等,即是否是指向同一个容器的同一个元素

三、vector和deque提供的额外运算

1.ite+/-n:返回指向后/前n个元素的迭代器

2.ite1+=ite2:ite1+ite2赋值给ite1;同-=

3.>,>=,<,<=:比较前后位置大小

四、迭代器取值范围

[first,last),前闭后开,返回第一个元素的位置和最后一个元素位置的后面。

五、实例

1 class Person 2 { 3 public: 4 int pid; 5 void print(){cout<<pid<<endl;};//内联函数 6 } 7 8 vector<Person> vp; 9 Person p1; 10 p1.pid=1; 11 Person p2; 12 p2.pid=2; 13 Person p3; 14 p3.pid=3; 15 16 vp.push_back(p1); 17 vp.push_back(p2); 18 vp.push_back(p3);//vp容器里面保存的是Person对象 19 20 //得到一个常量迭代器 21 vector<Person>::const_iteratot it=vp.begin();//获得指向第一个元素的迭代器 22 //拿到迭代器之后,我们可以直接来访问 23 Person px=*it;//it迭代器是指向当前元素的一个指针,就可以通过解引用来得到当前对象 24 //这样还能直接调用类函数 25 px.print(); 26 //另一种用法,去掉const 27 vector<Person>::iteratot it=vp.begin(); 28 it->print();//指针访问它里面的元素用-> 29 (*it).print();//二者等价,写法较麻烦 30 //通过it来遍历整个容器 31 while(it!=vp.end()) 32 { 33 it++; 34 it->print(); 35 }

本文共计550个文字,预计阅读时间需要3分钟。

顺序容器(迭代器)的C语言复习(9)如何改写为一个长尾词的?

一、使用指针遍历数组我们可以使用指针来遍历数组,就像使用指针一样,我们可以使用迭代器来遍历容器。

二、迭代器常用运算

1.*ite:返回迭代器所指元素的引用(ite是一个迭代器);

2.ite-mem:获取迭代器中指向的元素。

一、像使用指针可以遍历数组一样,我们可以使用迭代器来遍历容器;

二、迭代器常用运算:

1.*ite返回迭代器所指向的元素的引用(ite是一个迭代器);

顺序容器(迭代器)的C语言复习(9)如何改写为一个长尾词的?

2.ite->mem:获取迭代器中指定元素名为mem的成员,等价于(*item).mem;

3.++ite/ite++:给ite加1,指向下一个元素;同--

4.ite1==ite2,比较两个迭代器是否相等,即是否是指向同一个容器的同一个元素

三、vector和deque提供的额外运算

1.ite+/-n:返回指向后/前n个元素的迭代器

2.ite1+=ite2:ite1+ite2赋值给ite1;同-=

3.>,>=,<,<=:比较前后位置大小

四、迭代器取值范围

[first,last),前闭后开,返回第一个元素的位置和最后一个元素位置的后面。

五、实例

1 class Person 2 { 3 public: 4 int pid; 5 void print(){cout<<pid<<endl;};//内联函数 6 } 7 8 vector<Person> vp; 9 Person p1; 10 p1.pid=1; 11 Person p2; 12 p2.pid=2; 13 Person p3; 14 p3.pid=3; 15 16 vp.push_back(p1); 17 vp.push_back(p2); 18 vp.push_back(p3);//vp容器里面保存的是Person对象 19 20 //得到一个常量迭代器 21 vector<Person>::const_iteratot it=vp.begin();//获得指向第一个元素的迭代器 22 //拿到迭代器之后,我们可以直接来访问 23 Person px=*it;//it迭代器是指向当前元素的一个指针,就可以通过解引用来得到当前对象 24 //这样还能直接调用类函数 25 px.print(); 26 //另一种用法,去掉const 27 vector<Person>::iteratot it=vp.begin(); 28 it->print();//指针访问它里面的元素用-> 29 (*it).print();//二者等价,写法较麻烦 30 //通过it来遍历整个容器 31 while(it!=vp.end()) 32 { 33 it++; 34 it->print(); 35 }