您的位置:首页 > 其它

变量的定义,初始化和声明

2011-03-25 14:38 323 查看
变量的定义、初始化和声明在学高级编程语言时已经讲到过的,不过通过自己的编程经验,这里面有一些基本的本质问题要掌握。

1-definition 变量的定义
变量的定义主要是为变量申请内存空间用。(编译器要管理该变量名字和申请该变量的内存大小)
比如: QObject * myobject;
int x;
第一个语句是定义一个指针类型的变量myobject,4个字节的内存空间。(在这里一定要与QObject * myobject=new QObject;这个语句区别开,也就是说要把指针变量本身的内存指针变量指向的内存区分开!)
第二个语句是定义一个整型类型的变量x,4个字节的内存空间。

2-initilization 变量的初始化
变量的初始化主要为在申请到的内存中赋初值。(编译器要在该变量的内存中初始化初值,为后面使用该变量做准备,否则其内存中的值是随机的。)
比如: myobject=NULL;
x=10;
第一个语句是给变量myobject赋值NULL,因为上面刚定义了这个变量,但其4个字节内的值还是随机的,并没有赋值,这里初始化为NULL。
第二个语句是给变量x赋值10,因为上面刚定义了这个变量,但其4个字节内的值还是随机的,并没有赋值,这里初始化为10。

通常变量的定义和初始化可以在一条语句内完成。
比如: QObject * myobject=NULL;
int x=10;

3-declaration 变量的声明
变量的声明是说明该变量已经被定义过,(编译器要在已经定义的表中查找该变量的位置)
比如: extern QObject * myobject;
extern int x;
第一个语句是声明一个指针类型的变量myobject,该变量已经被定义过。
第二个语句是声明一个整型类型的变量x,该变量已经被定义过。

本文转自:http://hi.baidu.com/retn/blog/item/f31976915c18ac8ba977a458.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: