写在前面
由于笔者水平有限,仅能对书中语法细节做高度总结概括,后期会将更多细节做出补充,下面是干货
常量初始化
- const修饰的变量必须要进行初始化,因为他的值不可改变
- 如果要声明外部的常量,则需要我们加上extern就可以
const int a = 100;
extern const int b = 100;
对常量的引用
- 一般的,对常量的引用指向一个常量,但也可以指向一个非常量
- 当常量引用指向非常量时,依旧不允许改变常量引用的值,但可以通过改变非常量的值来改变常量引用指向的值
- 非常量引用绝对不可以指向一个常量!
const int a = 100;
const int &b = a; // 常量引用指向一个常量
int c = 100;
const int &d = c; // 常量引用指向非常量
c = 200; // 改变了非常量的值,常量引用的值连同被改变
cout << &d; // 此时输出200
指向常量的指针和常量指针
- 指向常量的指针不允许修改该指针指向的对象
- 常量指针不允许修改指针指向对象的值
- 而指向常量的常量指针不允许以上的两者
const int *a; // 指向常量的指针,*符号在标识符前面
int *const b; // 常量指针,*在const标识符前面
const int *const c; // 指向常量的常量指针,不可改指向对象也不可改值
写在后面
- ps:更多与常量有关的内容将在后续笔记中为大家带来