您的位置:首页 > 编程语言 > Qt开发

Qt银行管理系统——全局变量extern的使用

2018-02-21 01:21 471 查看
网上有两个方法,别人并不建议用extern因为会影响封装性。都建议用static关键字新建一个类然后放到public中去,然后我用了extern,因为简单方便,static用了一下没用的上来。
1.首先也是要创建一个lei来存放全局变量,我创建了一个类share,在类中申明extern变量,注意不要定义,只要申明,因为只能定义一次的。
share.h
#ifndef SHARE_H#define SHARE_H
/*在这里存放全局变量*/#include "cilent.h"extern QString username;//登录用户名共享extern Cilent *MyClient; //客户端套接字共享
class Share{public:Share();};

#endif // SHARE_H

//然后share.cpp中我什么都没干,也可以在cpp中定义全局变量,但我要在login中定义,所以cpp无用武之地。
2.login.cpp中定义变量,现在前面定义变量,然后在后面函数中赋值。

#include "login.h"#include "share.h"#include "ui_login.h"#include <QDebug>#include <QString>#include <QStringList>#include <QCompleter>#include <QMessageBox>QString username;Cilent *MyClient;
.....................................
MyClient = new Cilent(client);
.....................................
username = accountStr;

3.然后既可以在其他函数中使用了,在其他函数中使用只需申明例如在balance.cpp中
#include "balance.h"#include "ui_balance.h"#include "share.h"extern Cilent *MyClient;extern QString username;extern QString reciveData;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息