1. const int r=100; //标准const变量声明加初始化,因为默认内部连接所以必须被初始化,其作用域为此文件,编译器经过类型检查后直接用100在编译时替换
2.const修饰指针
第一种情况:const int *ptr=&a; ptr为指向常量的指针,其所指的值不可修改,但是其所指向的地址可以修改。
第二种情况:int * const ptr=&a;ptr为常量指针,其所指的地址不可被修改,但是其所指的值可以被修改。
第三种情况:const int * const ptr=&a,ptr为指向常量的常量指针,其所指向的地址不可修改,其所指向的值也不可修改。
3.const 用于函数参数直接看实例:
4.const 对于类
{1}对于const 修饰的类成员变量,只能在构造函数的参数初始化表里对其进行初始化,否则会引起编译错误。
(2)对于const 修饰的成员函数 ,如 int Fun(int a)const,这样声明之后任何企图在函数内部修改成员变量的值或者调用非const成员函数都会引起编译错误。
(3)对于const声明的用户自定义类的对象,如果调用这个类的非const成员函数,将会引起编译错误,编译器会保证在const对象的生命期内不被改变。
如果const对象一定要调用此函数的话,那就将此函数声明为const。实例: