C++ 中 const 的用法
C++ 函数 - const 的用法
https://www.cnblogs.com/xudong-bupt/p/3509567.html
https://www.runoob.com/w3cnote/cpp-const-keyword.html
描述
const 是 constant 的缩写,本意是不变的,不易改变的意思。在 C++ 中是用来修饰内置类型变量,自定义对象,成员函数,返回值,函数参数。
const 允许指定一个语义约束,编译器会强制实施这个约束,允许程序员告诉编译器某值是保持不变的。如果在编程中确实有某个值保持不变,就应该明确使用const,这样可以获得编译器的帮助。
例如:
1
2
3 const int a = 7;
int b = a; // 正确
a = 8; // 错误,不能改变a 被定义为一个常量,并且可以将 a 赋值给 b,但是不能给 a 再次赋值。对一个常量赋值是违法的事情,因为 a 被编译器认为是一个常量,其值不允许修改。
const 修饰指针变量有以下三种情况。
- 1: const 修饰指针指向的内容,则内容为不可变量。
- 2: const 修饰指针,则指针为不可变量。
- 3: const 修饰指针和指针指向的内容,则指针和指针指向的内容都为不可变量。
- 只有一个const,如果const位于 * 左侧,表示指针所指数据是常量,不能通过解引用修改该数据;指针本身是变量,可以指向其他的内存单元。
- 只有一个const,如果const位于 * 右侧,表示指针本身是常量,不能指向其他内存地址;指针所指的数据可以通过解引用修改。
- 两个const, * 左右各一个,表示指针和指针所指数据都不能修改。
用法
1 | int a1=3; ///non-const data 数据不是常量,是变量a1 |
返回值
返回一个常量。