有关c++ 变量的一些关键概念

c++是静态类型语言,在编译时会做类型检查,变量的类型决定了它的使用方式。静态类型检查有助于更早的发现程序错误。

左值和右值:左值可以出现在赋值语句的左边或右边;右值只能出现在赋值语句的右边。变量是左值,字面值常量是右值。

变量名以字母或下划线开头,由字母、数字、下划线组成,并且区分大小写。

变量的声明和定义:定义用于为变量分配存储空间,可以指定初始值。声明仅用于表明变量的类型和名字。声明需要在类型前加extern关键字。

int i; // 定义
extern int i; // 声明
extern double pi = 3.14; // 定义(声明不允许初始化,如果声明带初值,则被当做定义)

变量的初始化:在定义时指定初始值称为初始化。分为两种形式:复制初始化(copy-initialization)和直接初始化(direct-initialization)。

int ival(1024); // direct-initialization
int ival = 1024; // copy-initialization

复制初始化和赋值很容易混淆。初始化指创建变量并给它赋初值,而赋值则是擦除对象的当前值并用新值代替。

对于内置类型变量,如果定义时没有指定初始值,并且变量为全局变量,则系统自动将其初始化为0,如果变量为函数体内的局部变量系统不会进行自动初始化。未初始化变量仅可以用作赋值操作符的左操作数,作任何其他用途都是未定义的。

posted on 2013-01-29 17:02  zhuyf87  阅读(268)  评论(0编辑  收藏  举报

导航