C++——变量的声明、定义

C++——变量的声明、定义与初始化


一、变量的声明(declaration)

声明用于向程序表明变量的类型和名字。声明跟定义的不同之处是在前面加了extern修饰符。如下:

extern int i; // 声明变量i为int类型,但是没有分配存储空间。

二、变量的定义

定义用于为变量分配存储空间。定义也是声明,因为定义变量时声明了它的类型和名字。

int i;

定义的变量的同时可以初始化

int i = 10;

三、声明变量时初始化

声明变量时如果加上初始化语句,那么就是定义而不仅仅是声明。

extern int i = 5; // 定义。虽然有extern修饰符,但是也有初始化,所以是定义,而不仅仅是声明。

四、可以重复声明变量,但是不能重复的定义变量

这很好理解。声明没有分配存储空间,定义分配了存储空间。如果重复定义,那么一个变量就具有多个存储空间。访问变量的时候,就不知道要访问哪个存储空间了。

int i;       // 定义
extern i; // OK。声明
int i;       // Error。重复定义

extern double d = 10.5;  // 定义
extern double;             // OK。声明
extern double d = 5.0;  // Errro。重复定义


阅读更多
上一篇C++作用域总结
下一篇即时疑问
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭