gpt4 book ai didi

c++ - 二进制 '==' : no operator found error for vector C++

转载 作者:行者123 更新时间:2023-11-30 02:18:49 25 4
gpt4 key购买 nike

当我在 VS 2017 中编译我的 C++ 程序时,出现编译错误:binary'==':no operator found which takes a left-hand operand of type std::vector<int, std::allocator_Ty>(或者没有可接受的转换)。这是我第一次使用二维 vector ,我不确定这是否是部分原因。我的代码如下。任何人都可以帮助找出发生这种情况的原因吗?

#include <vector>
#include <algorithm>

using namespace std;

vector<vector<int>> feeds;

void foo()
{
find(feeds.begin(), feeds.end(), feeds[0][0]);
}

最佳答案

您正在尝试将 int 与 vector 进行比较。

feeds.erase(find(feeds.begin(), feeds.end(), feeds[l][k]));,有两个 vector 迭代器(feeds .begin()feeds.end()) 但 feeds[l][k] 指的是特定 vector 位置而不是 vector 。 feeds[l] 指的是 vector ,应改为使用。

但是,当您已经知道要删除哪个 vector (feeds[l]) 时,为什么还需要 find。我建议你检查你的逻辑并从那里开始。

关于c++ - 二进制 '==' : no operator found error for vector C++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51810674/

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