qmap可以定义为全局变量吗

问题描述

qmap可以定义为全局变量吗

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

解决方案

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

解决方案二:

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

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

 #ifndef __QMAP_POOL
#define __QMAP_POOL
QMap pool;
QMap::iterator p;
#endif

解决方案三:

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

解决方案四:

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

时间: 2024-07-28 13:49:39

qmap可以定义为全局变量吗的相关文章

c语言-在C语言编程中,我定义的全局变量足有2M大小,但生成的程序只有20k,怎么回事?

问题描述 在C语言编程中,我定义的全局变量足有2M大小,但生成的程序只有20k,怎么回事? 在C语言编程中,我定义的全局变量足有2M大小,但生成的程序只有20k,怎么回事? 解决方案 全局变量是运行时操作系统分配的,分配在堆上,不是分配在静态区,所以不会影响exe的大小. 解决方案二: 你的全局变量没有初始化数据吧?如果你有2M大小的数据,就不一样了. 比如, char a[2*1024*1024] = {0,1,2,3,4..........}; char b[2*1024*1024]; 在链

数据-程序中定义的全局变量,list 在input中已经赋值,为什么print函数中List=null?

问题描述 程序中定义的全局变量,list 在input中已经赋值,为什么print函数中List=null? #include #include #define N 4 struct node{ int score; struct node*link; }; struct node node; struct node*list,*p,*r,*q; void input(struct node*list) { int i; int ch; for(i=0;i { printf("please in

javascript-js 定义的全局变量 在使用的时候报 undefined 错误

问题描述 js 定义的全局变量 在使用的时候报 undefined 错误 alarmInputData = {}; //定义的全局变量 function alram_getCfgEx_success_callback(data) { //alert("recv: "+ data); var msg = JSON.parse(data); alarmInputData = msg.result.args; var day = new Date(); day = day.getUTCDay

java类实例定义为全局变量

问题描述 怎么把java类实例定义为全局变量比如classtext{}texta=newtext();怎么把a定义成全局变量 解决方案 解决方案二:publicclasstext{publicvoid方法(){}}classtext1{texta=newtext();publicvoid方法1(){a.方法();}publicvoid方法2(){a.方法();}} 解决方案三:publicstatictexta;a=newtext();设置成静态的解决方案四:3楼不对,我已用其他方法,谢谢大家解

c#的客户端能不能调用WebService定义的全局变量啊?如果能怎样调用啦?

问题描述 c#的客户端能不能调用WebService定义的全局变量啊?如果能怎样调用啦?我在Webservice里定义的全局变量客户端不能调用呢谢谢大哥们帮忙啊 解决方案 解决方案二:up解决方案三:写一个方法把变量值当作传出的参数给Return回去就行了~~客户端通过这个方法来得到这个参数值解决方案四:可以呀解决方案五:引用2楼ginni215的回复: 写一个方法把变量值当作传出的参数给Return回去就行了~~客户端通过这个方法来得到这个参数值 尽量用一个对象返回,可以减少调用webserv

使用配置类定义Codeigniter全局变量_php实例

CodeIgniter中公共函数不能追加,可以通过 helper 辅助函数实现.创建 common_helper.php 文件,定义所需公共函数,存放至 application/helpers 目录中.在 application/config/autoload.php 中配置 $autoload['helper'] = array('common'); 即可. 全局的变量也可以借助 helper 函数来实现.不过,更为合适的方式可能要属用配置类定义了. CodeIgniter 默认有一个主配置文

struts2 0-Struts2 结合easyui做dataGrid时,jsp收不到传来的json

问题描述 Struts2 结合easyui做dataGrid时,jsp收不到传来的json ,,, 实在没有C币了.折腾好几天了.求大神帮忙 解决方案 访问url错了. 改为 项目路径 + "/dataGrid.action" 解决方案二: <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> &

如何定义一个针对线程的全局变量?(C++)

问题描述 如何定义一个针对线程的全局变量?(C++) 我想定义一个全局变量,但是要求当不同线程访问时不会看到其他线程对它的修改,也就是说,这个变量只是在一个线程中看起来像是全局变量,实际上每一个线程都拥有它的副本并且只能看到和修改这个副本:但这个变量也不是线程的局部变量,因为这个变量不知道调用它的线程在何处启动,若用局部变量的话实现可能比较繁琐,所以我需要一个只在一个线程中看起来像是全局变量的变量,要实现这个目的该如何做呢?望高手指教! 解决方案 语言层面做不到.每个线程的堆栈是独立的,但是共用

在winform窗体中如何定义SQL连接的全局变量???

问题描述 初次用.netWindows编程,如何定义一个全局的SQL连接变量???在VB里可模块里定义一个全局变量,.net里怎么用??? 解决方案 解决方案二:publicstaticstringlink="";解决方案三:要么用一楼说的,要么放到web.comfig中解决方案四:winfrom哪来的web.config你可以放到app.config里定义然后写一个数据库操作类,每次需要使用数据库操作时只要声明一个这个数据库操作类的对象就可以了解决方案五:也可以定义一个静态类字段来实