迭代器使用 - Lint 警告

发布于 2024-12-25 13:10:34 字数 663 浏览 1 评论 0原文

我对迭代器的使用很陌生。我使用了下面的代码,其中使用迭代器解析列表中的所有元素,以确定该元素是否存在于列表中。

list<int> pendingRsp;
list<int>::iterator it1;

for(int i = 1; i <= 5; i++)
   pendingRsp.push_back(i *10);

for(it1 = pendingRsp.begin(); it1 != pendingRsp.end(); it1++)
{
   if((*it1) == 50)
   {
      found = true;   
      break;
   }
}

代码工作正常,但我收到以下 Lint 警告:

Info 1702: operator 'operator!=' is Both a common function 'operator!=(constpair<<1>,<2>> &, const 对<<1>,<2>&)' 和一个成员函数'list::const_iterator::operator!=(const const_iterator &) const'

上述警告是什么意思?列表中 != 运算符的运算符重载实现与迭代器之间是否存在冲突?

I am new to the usage of iterators. I have used the below code, where I parse through all the elements in the list using iterator, to determine whether the element exists in the list or not.

list<int> pendingRsp;
list<int>::iterator it1;

for(int i = 1; i <= 5; i++)
   pendingRsp.push_back(i *10);

for(it1 = pendingRsp.begin(); it1 != pendingRsp.end(); it1++)
{
   if((*it1) == 50)
   {
      found = true;   
      break;
   }
}

The code works fine, but I am getting the below Lint warning:

Info 1702: operator 'operator!=' is both an ordinary function 'operator!=(const pair<<1>,<2>> &, const pair<<1>,<2>> &)' and a member function 'list::const_iterator::operator!=(const const_iterator &) const'

What does the above warning mean? Is it conflict between operator overloading implementation of != operator in list and iterator?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

凉月流沐 2025-01-01 13:10:34

它的意思正是它所说的。列表迭代器是一个pair,并且pair有一个operator!=函数,但是列表迭代器类也有自己的operator! = 函数。由于两个运算符执行完全相同的操作(因为与第一个元素匹配的任何两对也与第二个元素匹配),因此您可以安全地忽略该警告。

It means precisely what it says. The list iterator is a pair and pair has an operator!= function, but the list iterator class also has its own operator!= function. Since both operators do precisely the same thing (because any two pairs that match on the first element match on the second as well), you can safely ignore the warning.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文