#定义 是一个 预处理器指令 .由#define定义的数据 宏 定义是预处理的,这样整个代码都可以使用它。这可以释放空间并增加编译时间。
null
康斯特 变量被认为是变量,而不是宏定义。
长话短说: 康斯特 由编译器处理,其中 #定义 s由 前置处理器 .
大人物 const优于#define 是类型检查#无法对定义进行类型检查,因此在尝试确定 数据类型 .如果变量是常数,那么我们可以获取存储在常数变量中的数据类型。
自从 常数被认为是变量 ,我们可以在上面使用指针。这意味着,除了更改数据本身,我们还可以对正则变量进行类型转换、移动地址以及其他所有操作,因为分配给该变量的数据是常量。
一般来说 const是一个更好的选择 如果我们有选择,它可以成功地应用于代码。有些情况下#define不能被const替换。例如,#define可以接受参数(参见 这 例如)#define还可以用来用另一个文本替换程序中的一些文本。
本文由 阿比拉蒂 编辑 诺兰·塔夫脱 。如果您发现任何不正确的地方,或者您想分享有关上述主题的更多信息,请发表评论
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END