为了账号安全,请及时绑定邮箱和手机立即绑定

extern字符串常量,宏定义字符串常量,怎么选

extern字符串常量,宏定义字符串常量,怎么选

婷婷同学_ 2019-04-23 15:36:19
在使用常量的时候,我看到主要有两种写法:#defineRKLICURegexEnumerationOptionsErrorKey@"RKLICURegexEnumerationOptionsErrorKey"externNSString*constRKLICURegexEnumerationOptionsErrorKey;这两种写法孰优孰劣?或者在哪些情况下该用那种写法?
查看完整描述

2 回答

?
有只小跳蛙

TA贡献1824条经验 获得超8个赞

define只是简单的替换,又称作宏定义、预处理命令。
而const是要分配内存空间的,提示编译器遇到此变量和函数时在其他模块中寻找其定义
还有就是#define是不会对数据类型进行检查的,而第二种会对数据类型进行安全检查、
推荐可以看看这篇文章,对Define与Const分析的比较详细,自己拿捏!
                            
查看完整回答
反对 回复 2019-04-23
  • 2 回答
  • 0 关注
  • 752 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信