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

本文介绍了一种在C++项目中使用全局变量的方法,通过extern关键字声明与定义分离实现跨文件共享,并展示了如何在一个简单的登录系统中应用此技术。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

网上有两个方法,别人并不建议用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;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值