一:const的使用: const常量类型表示“常值变量”,cosnt型变量代表的常值只在其作用域内有效; const与define相比:const会在编译时进行类型检查,而define只做文本替换;define后面不需要分号。 1.声明变量:例如 const int size = 20; 2.限定参数:函数中不能修改该参数 3.限定返回值:特别时返回值为指针或引用时,不能用返回值来改变返回值所指或所引用的变量 4.限定成员函数的修改操作:声明成员函数时,使该函数不能修改其类的成员变量 例如 void fun() const;
二:变量的作用域和生存期,存储类型 1.作用域:局部,全局,文件 2.内存分配方式:静态分配(静态存储区),自动分配(栈),动态分配(堆) 3.变量存储类型:auto,register,extern,static auto,register声明内部变量:auto变量在栈上,register变量在寄存器中;内部变量隐含为auto; extern声明外部变量,外部变量隐含为extern; static声明内部变量或外部变量;static声明的内部变量作用域时函数内部,但有全局的生存期 extern和static声明的变量都在静态存储区; 4.外部变量的两种声明方式:定义性声明和引用性声明 1.定义性声明:分配内存,一般要初始化;只能放在函数外部;可省略extern; 2.引用性声明:不分配内存,不能进行初始化(除非定义性声明时没初始化);不省略extern