为什么在QT定义一个公有类,形参是我自定义的结构体,结构体定义所在的头文件也添加了,但是编译就是说这个结构体未声明?
#ifndef CHATDLG_H
#define CHATDLG_H
#include <QDialog>
#include "System.h"
#include "qtqq.h"
namespace Ui {
class chatDlg;
}
class chatDlg;
typedef struct win_df{ //将帐号与窗体绑定的结构体
char qnumber[20];
chatDlg * chat_dialog;
}_chat;
//typedef struct Cli_to_Ser{ //客服端达到服务器的消息
// int command; //标志消息的用途 同时也用来接受服务器处理数据后返回的信号,与发过去的值相同表示操作失败!
// //0:注册;1:登录 1:注册成功;0:登录成功
// char s_number[20]; //发送信息的帐号;
// char r_number[20]; //告诉服务器这段信息处理后应该发往哪个帐号对应的套接字;
// char text[BUFSIZ];
//}CtoS;
class chatDlg : public QDialog
{
Q_OBJECT
public:
explicit chatDlg(QWidget *parent,int flag,char my_number[20],char number[20],int *chat_socket);
~chatDlg();
private:
Ui::chatDlg *ui;
char chat_to_who[20];
char chat_from_who[20];
int *send_to_where;
int type;
private slots:
void on_sendBtn_clicked();
public:
void show_mes(CtoS friend_mes);
};
#endif // CHATDLG_H
结构体的定义在那个System.h里
这是一个聊天窗口的头文件,public里的自定义函数是当主界面收到消息时新建这个窗口,然后让它显示消息