gpt4 book ai didi

c++ - 是否可以从 .begin() 迭代到 .rbegin()

转载 作者:行者123 更新时间:2023-11-28 06:31:34 24 4
gpt4 key购买 nike

我需要从容器的开头迭代到结尾之前的一个元素。我可以在循环中放置一个 if 条件来绕过最后一个元素,但我想知道是否可以像这样编写 for 循环:

for (it = C.begin(); it != C.rbegin(); it++){...}

如果没有,有什么建议吗?

是否依赖于容器? (现在,我正在使用 std::vector 但它可能会改变)

最佳答案

除了Tony D的评论, 你可以使用 std::prev(C.end())获取结束迭代器之前的迭代器:

for (it = C.begin(); it != std::prev(C.end()); it++);
// ^^^^^^^^^^^^^^^^^^

关于c++ - 是否可以从 .begin() 迭代到 .rbegin(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27435793/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com