iOS - 自动提示宏的设置

作者:Mitchell 
  • 自动提示宏:就是在输入宏的时候有提示功能
  • 应用场景: 想输入对象的属性的时候有提示
  • 示例
#define keyPath(objc,keyPath) @(((void)objc.keyPath, #keyPath))
  • 自动提示宏:(objc.keyPath)这一部分内容,仅仅是让你的宏具有提示功能
  • 为什么要加(void)?,这里是一个语法问题,逗号表达式的内容,
    • 例如:
int a = (3,5);
- a的值肯定是5,而且会报一个3没使用的警告,我们如何消除这个警告?
int a = ((void)3,5);

这样就会消除这个警告。
- 那么这句话((void)objc.keyPath, #keyPath) 就会返回 #keyPath 内容,keyPath 就是我们对象的属性,但是这个时候返回的是属性,因为宏定义是 C 语言的内容所以我们先需要将内容转换为 C 语言的字符串,也就是#keyPath。
- 这个时候返回的是 C 语言的字符串,而我们想要的是 OC 的字符串,直接使用 @()这个语法 就可以了。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容