看起来像函数定义,但没有参数列表;跳过明显的函数体?

erwei1983 2013-05-14 10:11:51
//tcpserver.h

#ifndef TCPSERVER_H
#define TCPSERVER_H
#include "tcpthread.h"
#include <QTcpServer>

class tcpserver : public QTcpServer
{
Q_OBJECT
public:
explicit tcpserver(QObject *parent = 0);
//QList<int> clientDescriptorList;

signals:
void newRow(int);
void displayInfo(int,QString, int);
void updateBar(int, qint64);
void signal_send_command(int,int);

public slots:
void incomingConnection(int socketDescriptor);
void slot_send_command(int,int);

};
#endif

//tcpserver.cpp

#include "tcpserver.h"


//构造函数
tcpserver::tcpserver(QObject *parent):
QTcpServer(parent)
{
}

//重新定义了incomingConnection这个虚函数,
//开辟一个新的tcpsocket线程,从TcpServer获得socketDescriptor,
//并完成相应的信号连接

void tcpserver::incomingConnection(int socketDescriptor)
{
qDebug() <<socketDescriptor;
//clientDescriptorList.append(socketDescriptor);
emit newRow(socketDescriptor); //display new client
connect(this,SIGNAL(signal_send_command(int ,int)),this,SLOT(slot_send_command(int ,int)));
}

void tcpserver::slot_send_command(int sockDescriptor, int cmd)
{
TcpThread *thread = new TcpThread(sockDescriptor,cmd, this);
thread->start();
connect(thread,SIGNAL(finished()),this,SLOT(deleteLater()));
connect(thread,SIGNAL(displayInfo(int,QString,int)),this,SIGNAL(displayInfo(int,QString,int)));
connect(thread,SIGNAL(updateBar(int,qint64)),this,SIGNAL(updateBar(int,qint64)));
}









这是一位前辈的代码,我想用一下,但是不知道怎么回事,运行的时候总是报错:

//构造函数
tcpserver::tcpserver(QObject *parent):
QTcpServer(parent)
{
}

就是上边的这报错:D:\QtSpace\server\tcpserver.cpp:8: 错误:C2470: “parent”: 看起来像函数定义,但没有参数列表;跳过明显的函数体

郁闷死了,不知道怎么回事啊!
大家帮我看一下啊,我第一次弄QT啊
...全文
1434 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
超开心~ 2013-05-14
  • 打赏
  • 举报
回复
#include <QtCore>
erwei1983 2013-05-14
  • 打赏
  • 举报
回复
加上 #include <QTcpServer>,不管用啊,还是那个错误
微雨流光 2013-05-14
  • 打赏
  • 举报
回复
加上 #include <QTcpServer> 试试
erwei1983 2013-05-14
  • 打赏
  • 举报
回复
怎么没人回答啊
erwei1983 2013-05-14
  • 打赏
  • 举报
回复
解决啦,好像是中文括号的问题,谢谢你们啊。特别感谢【微雨流光】
微雨流光 2013-05-14
  • 打赏
  • 举报
回复
有可能是tcpserver::tcpserver(QObject *parent): QTcpServer((parent) 这里的括号检查下是不是英文的括号

16,240

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧