C/C++ - 建议使用const static或#define

fra*_*nkV -3 c c++ global-variables

可能重复:C中的
"static const"vs"#define"

我的第一个想法是,这是隐含的,但是有没有理由为什么要使用const而不是#define

如果你设置了一个全局变量,为什么你想要改变它,你也不想全局保护它?

gbr*_*ner 5

Const通常会替换 #define

#define是一个可以进行文本替换的预处理器宏.您可以使用它来定义常量或宏或执行各种其他操作.

const是一种定义编译时常量的类型安全方法

这两种机制在编译过程中的不同时间发生,但一般来说,const是为了纠正问题而创建的#define.

我很少见到人们做类似的事情

#define CONSTINT  const int
Run Code Online (Sandbox Code Playgroud)

但这是合法的.