在C++中,要定义一个常量,有两种主要的做法
1. 符号常量 (#define)
2. 常值变量 (const)
符号常量的定义方式,其实与C++本身没有关系,它是一个编译器指令,或者称为预处理指令(有关的预处理指令还有#include,#ifdefine等等)。
与符号常量相对的,常值变量需要通过const关键字定义。相对来说,const更加现代,它是c++的一个关键字。
总结起来说,我们推荐用const,而不是#define预处理指令
1. const可以定义数据类型,提高了类型安全性。例如,我们上面可以指定PI这个常量是double类型
2. const既然是变量(这里有点别扭,它其实是不变的,但名称叫做常值变量),那么就有地址,适用面更加广
3. 语法上也更好理解一些
1. 符号常量 (#define)
2. 常值变量 (const)
符号常量的定义方式,其实与C++本身没有关系,它是一个编译器指令,或者称为预处理指令(有关的预处理指令还有#include,#ifdefine等等)。
与符号常量相对的,常值变量需要通过const关键字定义。相对来说,const更加现代,它是c++的一个关键字。
总结起来说,我们推荐用const,而不是#define预处理指令
1. const可以定义数据类型,提高了类型安全性。例如,我们上面可以指定PI这个常量是double类型
2. const既然是变量(这里有点别扭,它其实是不变的,但名称叫做常值变量),那么就有地址,适用面更加广
3. 语法上也更好理解一些