我在Qt中创建了一个新的'C ++库'项目,它有以下头文件:
#include "Test_global.h"
#include <QString>
#include <QTcpServer>
class TESTSHARED_EXPORT Test : QTcpServer
{
Q_OJECT
public:
Test();
~Test();
signals:
void NewMessage(QString);
};
(实现文件基本上是空的。)
当我尝试构建对象时,我收到错误:
Test.h:8: error: ISO C++ forbids declaration of ‘Q_OJECT’ with no type Test.h:10: error: expected ‘;’ before ‘public’ Test.cpp:3: error: definition of implicitly-declared 'Test::Test()'
所以看起来moc
根本没有处理文件。我做错了什么?
答案 0 :(得分:4)
应该是Q_OBJECT
,而不是Q_OJECT
。