cocos3.13前的版本中,一些全局变量使用static 定义,研究了static定义全局变量的优缺点。例如定义下面的头文件
//cocos.h
#pragma once
static int globle= 0;
static int image =
[...............
...............//省略
];
在其他源文件中,引用cocos.h头文件后,每个源文件都会保存一份cocos.h中全局变量的副本,这种方式定义的全局变量的坏处就是
1.每个源文件修改了cocos.h中的全局变量,其他源文件引用不会发生变化。
2.每个源文件都会保存一份副本,如果全局变量定义比较多,大工程中,多次引用,就会造成副本占用空间,浪费资源。
定义全局变量可以使用下面的方式:
//cocos.h
#pragma once
static int globle= 0;
static int image =
[...............
...............//省略
];
引用时,加入extern,但是不能赋值,如下
//test.cpp
extern int global;
void main()
{
}