0 c++
我想for在使用map时使用带迭代器的循环,并希望在不是从begin()end开始的指定范围内运行它end().我想将它用于从第3元素到第5元素的范围
我想将它用于从第3元素到第5元素的范围
因为std::map's迭代器不是a RandomAccessIterator,而只是a BidirectionalIterator(你不能写.begin() + 3),你可以std::next用于此目的:
for (auto it = std::next(m.begin(), 2); it != std::next(m.begin(), 5); ++it)
{
// ...
}
Run Code Online (Sandbox Code Playgroud)
并记住 - 检查您的范围以确保您迭代有效范围.
| 归档时间: |
|
| 查看次数: |
60 次 |
| 最近记录: |