运算符的多重定义<<在Qt项目中

时间:2013-07-25 18:22:37

标签: c++ qt operator-overloading

编译项目时,我从编译器收到multiple definition of operator<<错误。

inline QDataStream &operator<<(QDataStream &out, ValueCountPair const &pair)
{
    out << pair.value() << pair.count();
    return out;
}

我已经检查过,这个特定的运算符只在我的整个代码库中声明和/或定义一次。为什么说我有多个定义?

1 个答案:

答案 0 :(得分:3)

尝试这样做:

  • 点击构建 - &gt;清理项目;清洁项目&#34; YourProject&#34;
  • 重建

我有同样的问题,我认为moc某种程度上保留了我的代码的多个副本,导致错误。清理项目并重建时,会删除qmakemoc进程创建的所有元代码,从而清除错误。

这是Qt。

的一个错误