【发布时间】:2020-03-08 15:46:59
【问题描述】:
请考虑以下代码:
#include <iostream>
#include <iterator>
#include <vector>
int main()
{
std::vector<int> v{1,2,3};
// implementation 1:
for(auto iter = v.begin(); iter !=v.end(); ++iter)
std::cout << *iter;
std::cout << std::endl;
// implementation 2:
for(auto iter = v.begin(); iter !=v.end(); iter = std::next(iter, 1))
std::cout << *iter;
std::cout << std::endl;
}
如您所见,here 实现 1 和实现 2 产生相同的输出。总是这样吗?
【问题讨论】: