2 nightwishbaby nightwishbaby 于 2015.06.08 17:00 提问

qmap可以定义为全局变量吗

头文件
QMap pool;
QMap::iterator p;
原文件
pool.insert(i,IP);
如果定义为全局变量这个怎么改,还有我的qmap pool的插入数据在一个函数里,遍历
在另一个函数里,主要的想法是pool在程序运行的时候一直存在,直到程序结束,谢谢各位大神,小弟我没钱了,只有30C币了

4个回答

oyljerry
oyljerry   Ds   Rxr 2015.06.08 18:15
已采纳

全局变量可以直接访问,但是你需要做好读写锁,防止写入的时候,同时有读

nightwishbaby
nightwishbaby 谢谢你的提醒
2 年多之前 回复
caozhy
caozhy   Ds   Rxr 2015.06.08 17:08

就你这么写就可以,在别的文件中用extern QMap pool;

你的这段代码如果在头文件中,最好这么写

 #ifndef __QMAP_POOL
#define __QMAP_POOL
QMap pool;
QMap::iterator p;
#endif
nightwishbaby
nightwishbaby 解决啦,谢谢你
2 年多之前 回复
nightwishbaby
nightwishbaby static QMap<int,Qstring>pool QMap<int,Qstring>iterator p 定义的是私有变量,可是我在函数中执行插入操作是却总是出现错误,pool只在这个文件中调用,不是私有的问题
2 年多之前 回复
nightwishbaby
nightwishbaby QMap<int,string>pool
2 年多之前 回复
nightwishbaby
nightwishbaby QMap<int,string>pool
2 年多之前 回复
songhtao
songhtao   Rxr 2015.06.09 12:29

如果定义为全局变量这个怎么改,直接写在文件开头,预处理语句后就行了。

sxjiangdongqin
sxjiangdongqin   2015.06.09 22:03

全局变量可以直接访问,但是你需要做好读写锁,防止写入的时候,同时有读

Csdn user default icon
上传中...
上传图片
插入图片