【问题标题】:How can iterator be run in reverse order? [duplicate]迭代器如何以相反的顺序运行? [复制]
【发布时间】:2015-03-26 06:04:20
【问题描述】:

以下循环允许迭代器向前显示一些数据值。显示循环如何以相反的顺序显示值(使用 -- 而不是 ++) 当心!仅仅交换开始和结束是不正确的。

 for (iter = data.begin(); iter != data.end(); ++iter)
 cout << *iter;

【问题讨论】:

  • 你应该使用rbegin()rend()
  • 或者你可以先使用std::reverse(data.begin(), data.end())

标签: c++ vector


【解决方案1】:

已经为 STL 容器定义了反向迭代器:

for (auto iter = ctnr.rbegin(); iter != ctnr.rend(); ++iter) {
    cout << *iter;
}

【讨论】:

    猜你喜欢
    • 2019-01-15
    • 1970-01-01
    • 2015-12-09
    • 1970-01-01
    • 2012-01-09
    • 2012-05-22
    • 2021-02-16
    • 2023-01-14
    • 1970-01-01
    相关资源
    最近更新 更多