const关键字的作用
2017-08-10 19:28
267 查看
在C语言中:
1、修饰变量
const修饰的变量不可以改变,为只读。(C语言中,可以用强制类型转换,通过指针来改变变量的值)
2、修饰指针
如果const位于*的右侧,(eg. char *const p),const就是修饰指针本身,即指针本身是常量;
如果const位于*的左侧,(eg. char const *p),则const就是用来修饰指针所指向的变量,即指针指向为常量。
3、修饰函数形参
用const修饰函数参数,传递过来的参数在函数内不可以改变。
4、修饰函数返回值
与修饰变量和指针的含义基本相同。
在C++中:
1、修饰变量
编译器会将被const修饰的变量放在编译器的符号表中,除非使用volatile来避免编译器优化。因此即使使用强制类型转换,也不能改变变量的值。
2、修饰引用
const int & 与 int const &一样,无法修改引用的值。
3、修饰成员函数
用const修饰的类成员函数,在该函数体内不能改变该类对象的任何成员变量,也不能调用类中任何非const成员函数。
4、修饰对象
该对象的任何成员变量都不能被修改。
1、修饰变量
const修饰的变量不可以改变,为只读。(C语言中,可以用强制类型转换,通过指针来改变变量的值)
2、修饰指针
如果const位于*的右侧,(eg. char *const p),const就是修饰指针本身,即指针本身是常量;
如果const位于*的左侧,(eg. char const *p),则const就是用来修饰指针所指向的变量,即指针指向为常量。
3、修饰函数形参
用const修饰函数参数,传递过来的参数在函数内不可以改变。
4、修饰函数返回值
与修饰变量和指针的含义基本相同。
在C++中:
1、修饰变量
编译器会将被const修饰的变量放在编译器的符号表中,除非使用volatile来避免编译器优化。因此即使使用强制类型转换,也不能改变变量的值。
2、修饰引用
const int & 与 int const &一样,无法修改引用的值。
3、修饰成员函数
用const修饰的类成员函数,在该函数体内不能改变该类对象的任何成员变量,也不能调用类中任何非const成员函数。
4、修饰对象
该对象的任何成员变量都不能被修改。
相关文章推荐
- 关键字static/const的作用 const常量与define宏定义的区别
- C++中const和static关键字的作用总结
- const关键字至少有下列n个作用:http://zhidao.baidu.com/link?url=Md6-Oqpx7YbJqpy_52cWGmS6exFvPpts01iDiuhvl3wpv6kNX
- 关键字static/const的作用
- C语言中关键字auto、static、register、const、volatile、extern的作用
- 关键字const有什么含意?修饰类呢?static的作用,用于类呢?还有extern c的作用
- 关键字static/const的作用
- 关键字static和const的作用以及它们的区别
- 谈谈以下关键字的作用auto static register const volatile extern
- static,const关键字作用
- 总结static和const关键字的作用
- 关键字static、Const、Volatile的作用是什么
- static、extern、const、register、auto、volatile、typedef关键字的作用
- 关键字static、Const、Volatile的作用是什么
- C语言中关键字auto、static、register、const、volatile、extern的作用
- static和const关键字的作用
- 关键字static、const、volatile的作用
- 关键字static和const的作用
- C语言中关键字auto、static、register、const、volatile、extern的作用
- 关键字const的作用