gpt4 book ai didi

c++ - STL 迭代器不起作用?不知道为什么

转载 作者:太空狗 更新时间:2023-10-29 19:40:52 26 4
gpt4 key购买 nike

我有一个类有一个私有(private)成员:

std::set<unsigned long> Sset;

我对这个函数有疑问:

原型(prototype):

Set& Union (Set&, Set&);

代码:

    Set& Set::Union (Set& s1, Set& s2)
{
set<unsigned long>::iterator a;
set<unsigned long>::iterator j;

for (a = s1.Sset.begin(); a!=s1.Sset.end(); ++a)
for (j = s2.Sset.begin(); j!=s2.Sset.end(); ++j)
if (*a = *j)
{
Sset.insert(*a);
break;
}

return *this;
}

我得到编译器错误 expression must be a modifiable lvalue at *a=*j

迭代器 j 一切正常,但它不接受 *a

有任何帮助或解释吗?谢谢

最佳答案

你应该在 if 语句中使用 == 吗?

关于c++ - STL 迭代器不起作用?不知道为什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8252151/

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