以前当oc服务生生,遇到一件这样的事。

内容提示:当代大学生人生目标缺失简论_郭晶

文档格式:PDF| 浏览次数:2| 上传日期: 15:33:27| 文档星级:?????

全文阅读已结束如果下载本文需要使用

该用户还上传了这些文档

}

在 Objective-C 中向 nil 发送消息是完全有效的——只是在运行时不会有任何作用:

1. 如果一个方法返回值是一个对象那么发送给nil的消息将返回0(nil)

3. 如果方法返回值为结构体,发送给 nil 的消息将返回0。结构体中各个字段的值将都是0

4. 如果方法的返回值不是上述提到的几种情况,那么发送给 nil 的消息的返回值将是未定义的

objc是动态语言,烸个方法在运行时会被动态转为消息发送即:

那么,为了方便理解这个内容还是贴一个objc的源代码:

objc在向一个对象发送消息时,runtime库会根據对象的isa指针找到该对象实际所属的类然后在该类中的方法列表以及其父类方法列表中寻找方法运行,然后在发送消息的时候objc_msgSend方法不會返回值,所谓的返回内容都是具体调用时执行的那么,回到本题如果向一个nil对象发送消息,首先在寻找对象的isa指针时就是0地址返回叻所以不会出现任何错误

  • 转至元数据结尾创建: 董潇伟,最新修改于: 十二月 23, 2016 转至元数据起始第一章:isa和Class一....

  • 在 Objective-C 中向 nil 发送消息是完全有效的——只是在运行时不会有任何作用: 如果一个方法返回值...

  • 我不是个好男人我必须承认这一点。这是我在寝室呆了一天什么也没干后得出的結论当一个人觉得自己没错的时候,他甚至可...

  • 其实每天花时间最多的一件事情就是阅读每天会读到各种各样的文章、新闻、评论、各種感悟,各种心灵鸡汤这些文章有的让...

}

我要回帖

更多关于 oc服务生 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信