📜  在C++ STL中列出crbegin()和crend()函数(1)

📅  最后修改于: 2023-12-03 14:51:14.749000             🧑  作者: Mango

C++ STL中的 crbegin()crend() 函数

在 C++ STL 中,crbegin()crend() 函数可以帮助程序员更好地访问容器中的元素。这两个函数可以返回一个指向容器底部的反向迭代器,以方便程序员从容器末尾向前遍历容器中的元素。

函数说明
crbegin()
const_reverse_iterator crbegin() const noexcept;

crbegin() 函数返回一个 const_reverse_iterator 对象,该对象指向容器的最后一个元素(也就是容器的末尾)。

crend()
const_reverse_iterator crend() const noexcept;

crend() 函数返回一个 const_reverse_iterator 对象,该对象指向容器的第一个元素之前的位置(也就是容器的开头)。

示例
#include <iostream>
#include <vector>

using namespace std;

int main() {
  vector<int> v = {1, 2, 3, 4, 5};

  // 遍历容器当中的元素
  for (auto iter = v.crbegin(); iter != v.crend(); ++iter) {
    cout << *iter << " ";
  }
  cout << endl;

  return 0;
}

输出结果:

5 4 3 2 1

该示例中,我们创建了一个 vector 对象,并使用 crbegin()crend() 函数遍历了该容器中的元素。我们从容器末尾开始遍历,一直到容器开头。

总结

crbegin()crend() 函数为程序员在访问 C++ STL 容器中的元素时提供了更多的便利。使用这两个函数,我们可以在不破坏容器中元素的情况下,反向遍历容器中的元素。