C++常量

常量是编程中一种重要的语法结构,C++使用const来定义常量。

一、const修饰符

使用const可以定义常量,一旦定义就不能修改:

const double PI = 3.14;
PI = 3; // 错误,不能修改

二、指针常量

const可以修饰指针,使指针不能修改指向地址:

int n = 1;
const int* p = &n; // 指针常量
*p = 2; // 错误,*p不能修改

三、常量指针

const也可以修饰指针指向的值,使不能修改值:

int n = 1; 
int* const p = &n; // 指向常量
*p = 2; // 正确 
p = &m; // 错误,p不能修改

四、字符串字面量

字符串字面量是const char数组,不能修改:

"hello" // 字符串常量 

五、constexpr常量表达式

constexpr可以定义复杂常量表达式:

constexpr int size = 10;
constexpr int arr[size] = {1, 2, 3}; 

六、#define宏定义

define也可以定义简单宏常量:

#define PI 3.14

理解常量的使用可以避免代码中无意的修改。