C/C++中定义全局变量的几种方法及区别
2个回答
展开全部
全局变量只有一种定义方法,就是在.cpp中 Type obj=InitValue; 其中有几种变化:1、内置类型如果没有InitValue那么会初始化为0。 2、类类型 InitValue可以是构造函数调用,也可以是能够隐式转换为Type类型的值。3、默认情况下,obj是外部链接的,这也是为什么要在.cpp中定义,而不要在.h中定义的原因,为了让其它的链接编译单元即.cpp能用,可以在.h中放置声明extern Type obj; 4、可以在Type前加上static迫使它成为内部链接,这是这个全局变量就只能在这个.cpp文件作用域中能用。5、可以将全局变量的定义放入namespace定义的名字空间中,但不影响其外部内部链接性质
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询