gpt4 book ai didi

objective-c - Objective-C . 将 int 转换为 float

转载 作者:太空狗 更新时间:2023-10-30 03:21:47 25 4
gpt4 key购买 nike

很抱歉提出这样的一般性问题,但是在 ObjC 中将 int 转换为 float 的最佳(尽可能快且最安全)方法是什么:

首先

int b = 10;
float a = [[NSNumber numberWithInt: b] floatValue]

会有NSNumber实例和消息numberWithIntfloatValue会被发送,对吧?

第二

int b = 10;
float a = (float) b;

C 风格:这会调用一些子程序吗?

或者其他方式?

为什么?

最佳答案

C 风格的类型转换是最清晰易读的。如果我碰巧找到创建一个 NSNumber 对象的代码只是为了让它进行转换,我会想知道“他为什么那样做?除了普通的旧类型之外,这里发生了什么转换?我错过了什么?”

至于速度,我怀疑简单的类型转换也会更快——NSNumber 对象将需要执行几乎相同的操作来进行转换,并且有对象的额外开销在此之上创建和消息传递。但与所有此类情况一样,不要猜测 - 测量。分析您的代码以查看转换是否是一个严重到值得您关注的瓶颈。

关于objective-c - Objective-C . 将 int 转换为 float,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5728998/

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