美文网首页
Objective-C type encodings

Objective-C type encodings

作者: 刘香涛 | 来源:发表于2016-09-22 14:24 被阅读0次
屏幕快照 2016-09-22 下午2.22.53.png

具体请参照官方文档

使用场景

1.iOS 运行时在动态添加方法时会用到:
class_addMethod(<#__unsafe_unretained Class cls#>, <#SEL name#>, <#IMP imp#>, <#const char *types#>)

参数1 class
参数2 方法体
参数3 IMP 函数指针
参数4 types 函数的定义

实例
class_addMethod([self class], sel, (IMP)changeBackgroud, "v@:@");
class_addMethod([self class], sel, class_getMethodImplementation([self class], @selector(abc)), "v@:");

"v@:@"的具体含义
v 代表返回值(void)参照图表设置想返回的类型
@ 代表object 这个是receiver 必传
:代表SEL 这个是_cmd 必传
@ 代表参数 这个代码参数 可选

void changeBackgroud(id self,SEL _cmd,id value){}

相关文章

  • Objective-C 类型编码

    一. Objective-C Type Encodings 编码意义cA chariAn intsA shortl...

  • Objective-C 类型编码

    使用以下方法时type参数释义: 例如 一.Objective-C Type Encodings 二.Object...

  • Objective-C type encodings

    具体请参照官方文档 使用场景 1.iOS 运行时在动态添加方法时会用到:class_addMethod(<#__u...

  • iOS 的Type Encodings

    iOS 的Type Encodings Type Encodings compiler 编码encode 每个me...

  • iOS 类型编码(Type Encodings)

    Type Encodings

  • Type Encodings

    Type Encodings Apple Type Encodings 就是编译器把 method 的参数列表和返...

  • Objective-C type encodings runti

    void *objc_destructInstance(id obj) { } -(void)setFilled:...

  • Type Encodings

    为了帮助运行时系统,编译器将每个方法中的返回值类型和参数类型进行编码,并将方法名和方法选择器进行关联。编译器通过@...

  • Type Encodings

    @encode,@编译器指令 之一,返回一个给定类型编码为一种内部表示的字符串(例如,@encode(int) →...

  • Type Encodings

    Type Encodings 在使用消息转发的时候,我们经常会用到到这个方法methodSignatureForS...

网友评论

      本文标题:Objective-C type encodings

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