2013-08-01 84 views
0

我是Qt(和C++)的新手。我有一个简单的问题: 有什么问题?QLocalServer - 为初学者提供的帮助

#include <QCoreApplication> 
#include <QtNetwork/QLocalServer> 

int main(int argc, char *argv[]) 
{ 
    QCoreApplication a(argc, argv); 

    QLocalServer* x = new QLocalServer(this); 
    return a.exec(); 
} 

感谢您的建议。

回答

1

你的问题是这样的(双关语意):

QLocalServer* x = new QLocalServer(this); 

this不被外部非静态类的成员函数有效。 main()不是成员函数,因此this不存在。可以传递NULL指针代替,以表示该对象不应有任何父:

QLocalServer* x = new QLocalServer(NULL); 

不要忘记添加网络模块在您的项目文件的QT变量。例如:

QT += OTHER_MODULES_YOU_USE_HERE network 
+0

我曾尝试 “空” 和我有一个不同的错误:main.obj:-1:错误:LNK2019:无法解析的外部符号“__declspec(dllimport的)市民:__cdecl QLocalServer :: QLocalServer(类的QObject *)“(__imp _ ?? 0QLocalServer @@ QEAA @ PEAVQObject @@@ Z)功能主 –

+0

中引用您需要链接到QtNetwork模块。你可以通过在项目文件的'QT'变量中加入'network'来实现。我更新了答案。 –

+1

@DanielPokorný然后请将此答案标记为已接受。 –