c++ - 不能使用“==”运算符比较两个向量
问题描述
我有一个适用于我的 Arduino Uno 的程序,但由于某种原因,我得到了错误
'operator==' 不匹配(操作数类型为 'Vector' 和 'Vector')
在我的第二次矢量比较中,而不是第一次。
这是代表我的问题的代码。
#include <Vector.h>
void setup() {
}
void loop() {
Vector<char> tACode;
Vector<char> aCode;
aCode.push_back('0');
aCode.push_back('0');
aCode.push_back('0');
Vector<char> nCode;
nCode.push_back('0');
nCode.push_back('0');
if (tACode == aCode){
}
if (tACode == nCode){
}
}
我花了几个小时试图弄清楚为什么会发生这种情况,但没有运气。我将不胜感激第二双眼睛。
解决方案
取决于您的Vector
类的定义,它可能没有operator==
为它定义。
相反,您可以先比较它们的大小,如果有办法访问它,然后比较它们中的每个项目。
推荐阅读
- java - 尝试在 JPanel 中添加更多形状时出错
- html - 尝试使用角度可编辑 div 中的文本内容更新变量时,可编辑 div 上的奇怪行为。有什么解释吗?
- python - Python SyntaxError:非 ASCII 字符
- mysql - Mysql:以时间为条件限制插入、更新、删除动作
- inno-setup - Inno Setup - 显示 MsgBox 并单击“确定”返回上一页
- android - 如何初始化 exoplayer 以播放破折号(.mpd)视频
- c++ - 在多个对象中找到一个相同的元素
- javascript - 过滤掉无效电子邮件,使其不会从警报提示中显示到文档中
- java - 子对象json字符串到父对象
- javascript - 带有 .appendchild() 的 Javascript for 循环正在从 html dom 中的 [object object] 附加最后一个对象的值