0

我已经在目标 c 中编码了一段时间,但有时我仍然想知道是否有最好或最快的方法来做某事。

例如,假设我有一个名为 myLabel 的 UILabel 和一个名为 mainView 的 UIViewController,那么设置它的最快或最佳方法是什么。

方法一

mainView.myLabel.text = @"String"; //similar to c/c++ style

方法二

[mainView.myLabel setText:@"String"]; //between c/c++ and obj-c style

方法三

[[mainView myLabel] setText:@"String"]; //obj-c style

我个人更喜欢方法2,因为方法1不只是一种访问它的速记方法吗?谢谢你的帮助。

4

3 回答 3

3

您列出的所有 3 个选项都会调用相同的代码(myLabel 和 setText: 方法),因此绝对没有性能差异。

所以最好的方法是选择你最喜欢的任何一个选项,并在整个项目中始终如一地使用它。

于 2012-11-27T15:45:48.983 回答
2

它们编译成完全相同的代码。没有任何效率损失。使用任何你喜欢的。

选项 1 涉及最少的打字。选项 3 最好地描述了实际发生的情况(例如,您不能将属性访问误认为 struct 元素访问)。

于 2012-11-27T15:45:57.723 回答
1

我添加了另一种方式,仅供参考,所有同行都说,这些都是相似的,没有性能问题....

方法一

mainView.myLabel.text = @"String"; //similar to c/c++ style

方法二

[mainView.myLabel setText:@"String"]; //between c/c++ and obj-c style

方法三

[[mainView myLabel] setText:@"String"]; //obj-c style
于 2012-11-27T16:20:06.233 回答