const 用法

 

1)限定符声明变量只能被读

2)const 变量必须初始化

const int i=5;

const int j;//非法

const *int a;//无需初始化

int* const b;//非法,b要初始化

3)const使变量拥有文件作用域,若想在其他文件使用:在定义时:extern const int i=100;在另一个文件中使用时这样声明:extern const int i;然后就可以在这个文件中使用i了。

4)const int i=10;在编译优化后i是不会被分配内存的,而是直接将10代入以后的引用中

5)#define 和const 定义的常量在定义是均不会分配内存,在使用时,第一次使用const常量使分配内存,以后不再分配。而使用define常量时,每使用一次,分配一次内存。

6)const int *p;与int *const p;的区别

 

int main(){
	int c=100;
    int d=1000;

	const int a=10;//需要初始化 
	const int *ab;//无需初始化
	int* const ac=&d;cout<<*ac<<endl;//需要初始化 *ac=1000

	//ac=10;//不可修改
	
	//*ab=a;
	ab=&a;cout<<*ab<<endl;//*ab是const类型,不可修改 *ab=10
	ab=&c;cout<<*ab<<endl;//但ab可以修改 *ab=100

	//ac=&c;error
	*ac=c;cout<<*ac<<endl;//a是const类型,不可修改 *ac=100
	*ac=10000;cout<<*ac<<endl;//但*a可以修改 *ac=10000;

7)const 修饰类数据成员,成员函数,类对象,形参。

在成员函数形参后添加const,表明该函数不会修改类的数据成员,

const修饰数据成员表示该数据成员一旦赋值就不可变,

const修饰类对象,该对象只能调用类的const成员,

const修饰形参,指不可改变形惨。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值