全局变量不能放在头文件其中

看网上各种说法说 变量的声明和变量的定义,可是还是没有讲清楚什么是声明什么是定义,假设说定义要分配内存。声明不分配。

这个谁都知道。

刚我在VS2012中測试。

按理说 int i。  仅仅是声明吧

可是我在一个头文件其中声明 int i;

然后两个CPP文件都调用这个.C文件,出现了重定义错误。

我改为 int i = 8;

执行也是报错误,重定义;

 

人们说,在头文件其中仅仅能声明。不能定义变量。实在搞不懂这句话是什么意思,

反正在头文件其中放置全局变量不是好的习惯,以后在头文件其中避免放置全局变量就好!

由于总归来说在头文件放置全局变量会引发一些问题。

 

假设博友谁能够讲清楚 究竟 什么是声明什么是定义?麻烦在以下评论一下。

比方 我在main函数里面

int i; i我不显示赋值。我查看内存这个时候i是一个乱码,说明已经有内存了。

是不是说这个 int i 已经是定义了?那什么是声明?

 

posted @ 2015-12-18 09:05  phlsheji  阅读(440)  评论(0编辑  收藏  举报