ISO中运行时简单使用及KVC补充

时间:2022-03-02 22:02:06

一、运行时简单使用

1.包含头文件<objc/message.h>

2.给对象发送消息的方法:objc_msgSend(id, SEL, ....)

* 第1个参数是对象

* 第2个参数是方法

* 后面的...参数是调用方法需要传递的参数

3.平时的方法调就是转成了底层的消息机制函数调用,比如

[person setAge:10];

转成了

objc_msgSend(person, @selector(setAge:), 10);

二、KVC补充

NSArray *data = [_citiesData valueForKeyPath:@"name"];

上面代码所做的操作是:

* 先取出_citiesData中的每一个对象元素

* 再取出每一个对象元素的name属性值

* 最终把所有的name属性值放到一个数组中,并且返回