gpt4 book ai didi

objective-c - Objective-C 如何提供动态运行时?

转载 作者:太空狗 更新时间:2023-10-30 03:20:16 24 4
gpt4 key购买 nike

Objective-C 如何提供“动态”运行时?这里的“动态”指的是什么?

最佳答案

一句话:Objective-C 在调用之前(在运行时)决定调用哪个方法实现。这个想法是方法的名称实现 之间的连接是动态的。例如,C++ 在编译时解析名称。

例子:

id object = @"1";
int i = [object intValue];

object = @1;
i = [object intValue];

在此示例中,intValue 消息首先发送到 NSString 实例,然后发送到 NSNumber。对于这两个调用,编译器发出的代码是相同的——事实上,编译器甚至不知道它向哪种对象发送消息(因为类型是 id)。

运行时决定调用哪个实现来从字符串或 NSNumber 中提取 int 值。

关于objective-c - Objective-C 如何提供动态运行时?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13306198/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com