gpt4 book ai didi

C++ 迭代器访问下一个元素进行比较

转载 作者:行者123 更新时间:2023-11-27 22:51:19 24 4
gpt4 key购买 nike

我试图通过“查看”列表中的下一个元素来比较列表中的两个元素。使用 C++11。

这可能吗?我遇到了一些麻烦。

#include <list>
#include <iostream>

using namespace std;

int main(int argc, char *argv[])
{

list<int> intList;

intList.push_back(10);
intList.push_back(20);
intList.push_back(30);
intList.push_back(30);


list<int>::iterator it;

for (it = intList.begin(); it != intList.end(); it++)
{
if (*it == *it + 1)
cout << "Duplicate: " << *it << '\n';
}
}

最佳答案

是的,这是可能的:

assert(!intList.empty()); // else ++begin is UB

for (list<int>::iterator it1 = intList.begin(), it2 = ++intList.begin();
it2 != intList.end(); ++it1, ++it2)
{
if (*it1 == *it2)
cout << "Duplicate: " << *it1 << '\n';
}

关于C++ 迭代器访问下一个元素进行比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37016845/

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