美文网首页
iOS中常用的宏定义

iOS中常用的宏定义

作者: Boy_iOS | 来源:发表于2016-06-05 00:48 被阅读196次

iOS自动提示宏

01.当我们使用kvo或者做动画的时候需要使用keyPath,但是keyPath是字符串类型,为了防止输入错误,我们可以使用下面的自动提示宏
 [self.mainView addObserver:self forKeyPath:@"frame" options:NSKeyValueObservingOptionNew context:nil];

02.自动提示宏如下:
#define keyPath(objc,keyPath) @(((void)objc.keyPath, #keyPath))

接下来简单对这个宏定义进行解释:
  - 宏定义里面的#号,会自动把后面的参数变成C语言的字符串
  - @(基本类型)可以对基本类型进行装箱操作(也就是基本类型转换为OC的对象)
  - 对于逗号表达式,例如:`(5, 10, 2)`会去最后一个值,为了防止前面两个值因为没有使用报警告可以这样写((void)5, (void)10, 2),这个括号相当于return 2,所以为了把整个值转变成对象类型可以再加一个括号@(((void)5, (void)10, 2))

- 对于@(((void)objc.keyPath, #keyPath))来说就是取keyPath位置的字符串

相关文章

  • iOS常用宏定义

    打印日志的几种写法 推荐文章iOS 日常工作之常用宏定义大全iOS常用宏定义 结束语 到这里就结束了,如若不懂的话...

  • iOS-常用宏定义

    [转自:iOS常用宏定义][http://www.cocoachina.com/ios/20161207/1831...

  • iOS 常用宏定义

    iOS 开发中使用一些常用宏定义可以大大提高开发效率,提高代码的重用性.以下是一些常用的宏定义: 像这些宏定义,在...

  • iOS 开发小经验

    iOS 开发中你是否遇到这些经验问题(一)iOS 开发中你是否遇到这些经验问题(二)iOS 日常工作之常用宏定义大全

  • iOS IPA包编译时间获取

    iOS IPA包编译时间获取 另加ANSI C标准中几个常用标准预定义宏: __LINE__:调用该宏语句所在的行...

  • ios拓展31-宏(define)和const的正确姿势

    在iOS开发中,经常用到宏定义,但是网上看一些博客的时候,有的说宏定义大量使用会重复拷贝,占用内存. 有的说不会...

  • IOS NSLog宏定义

    IOS NSLog宏定义 标签(空格分隔): IOS IOS NSLog宏定义 宏定义NSLog方法,不用加";"...

  • IOS开发中 常用的宏定义

    #ifndef iOS_Constants_h #define iOS_Constants_h /* ******...

  • iOS常用宏定义

    1.UI元素 //NavBar高度#defineNAVIGATIONBAR_HEIGHT 44//StatusBa...

  • iOS常用宏定义

    字符串是否为空 #define kStringIsEmpty(str) ([str isKindOfClass:[...

网友评论

      本文标题:iOS中常用的宏定义

      本文链接:https://www.haomeiwen.com/subject/pgzldttx.html