3

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

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

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

4

1 回答 1

4

尝试这样做:

  • 点击 Build -> Clean Project "YourProject" 来清理你的项目
  • 重建

我遇到了同样的问题,并且我认为moc以某种方式在某处保留了我的代码的多个副本,从而导致了错误。当你清理你的项目并重建它时,它会删除所有由qmakeandmoc进程创建的元代码,从而清除错误。

这是 Qt 的一个错误。

于 2013-07-25T18:22:36.943 回答