我想比较两个Qlist说
QList<QSerialPortInfo> port1;
QList<QSerialPortInfo> port2;
我想在if
条件下实施
if (port1 != port2)
{
// do something
}
但是似乎它不起作用,因为我已经阅读了QList的文档,并且有该成员
operator!=(const QList<T> &other) const
任何想法如何实现它,请不要说哦,我不会给您解决方案,但是这里有个提示。我不是学生,这不是家庭作业。我正在Qt中做自己的项目。 谢谢大家。
答案 0 :(得分:4)
从QList<T>::operator!=
documentation ...
此函数要求值类型具有以下实现 运算符==()。
不幸的是,没有为operator==
定义有效的QSerialPortInfo
,但您可以轻松实现自己的...
bool operator== (const QSerialPortInfo &lhs, const QSerialPortInfo &rhs)
{
return lhs.manufacturer() == rhs.manufacturer()
&& lhs.serialNumber() == rhs.serialNumber();
}
所示代码假定QSerialPortInfo
实例可以由其制造商和序列号唯一标识。