C++ STL vector容器迭代器如何高效运用详解?

2026-04-17 01:280阅读0评论SEO基础
  • 内容介绍
  • 文章标签
  • 相关推荐

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

C++ STL vector容器迭代器如何高效运用详解?

在STL+array随机访问迭代器一节中,详细介绍了array容器及其迭代器,vector容器及其迭代器和前者的相似之处。例如,vector容器的迭代器也是随机访问迭代器,并且vector模板类提供了丰富的操作。

在《STL array随机访问迭代器》一节中,详细介绍了 array 容器迭代器,vector 容器迭代器和前者有很多相同之处。比如,vector 容器的迭代器也是随机访问迭代器,并且 vector 模板类提供的操作迭代器的成员函数也和 array 容器一样(如表 1 所示)。

表 1vector 支持迭代器的成员函数 成员函数 功能 begin() 返回指向容器中第一个元素的正向迭代器;如果是 const 类型容器,在该函数返回的是常量正向迭代器。 end() 返回指向容器最后一个元素之后一个位置的正向迭代器;如果是 const 类型容器,在该函数返回的是常量正向迭代器。此函数通常和 begin() 搭配使用。 rbegin() 返回指向最后一个元素的反向迭代器;如果是 const 类型容器,在该函数返回的是常量反向迭代器。 rend() 返回指向第一个元素之前一个位置的反向迭代器。如果是 const 类型容器,在该函数返回的是常量反向迭代器。此函数通常和 rbegin() 搭配使用。 cbegin() 和 begin() 功能类似,只不过其返回的迭代器类型为常量正向迭代器,不能用于修改元素。 cend() 和 end() 功能相同,只不过其返回的迭代器类型为常量正向迭代器,不能用于修改元素。
阅读全文

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

C++ STL vector容器迭代器如何高效运用详解?

在STL+array随机访问迭代器一节中,详细介绍了array容器及其迭代器,vector容器及其迭代器和前者的相似之处。例如,vector容器的迭代器也是随机访问迭代器,并且vector模板类提供了丰富的操作。

在《STL array随机访问迭代器》一节中,详细介绍了 array 容器迭代器,vector 容器迭代器和前者有很多相同之处。比如,vector 容器的迭代器也是随机访问迭代器,并且 vector 模板类提供的操作迭代器的成员函数也和 array 容器一样(如表 1 所示)。

表 1vector 支持迭代器的成员函数 成员函数 功能 begin() 返回指向容器中第一个元素的正向迭代器;如果是 const 类型容器,在该函数返回的是常量正向迭代器。 end() 返回指向容器最后一个元素之后一个位置的正向迭代器;如果是 const 类型容器,在该函数返回的是常量正向迭代器。此函数通常和 begin() 搭配使用。 rbegin() 返回指向最后一个元素的反向迭代器;如果是 const 类型容器,在该函数返回的是常量反向迭代器。 rend() 返回指向第一个元素之前一个位置的反向迭代器。如果是 const 类型容器,在该函数返回的是常量反向迭代器。此函数通常和 rbegin() 搭配使用。 cbegin() 和 begin() 功能类似,只不过其返回的迭代器类型为常量正向迭代器,不能用于修改元素。 cend() 和 end() 功能相同,只不过其返回的迭代器类型为常量正向迭代器,不能用于修改元素。
阅读全文