2015-11-14 68 views
0

例如的區別是什麼之間.enabled並設置啓用

uiLabel.enabled = NO;[uiLabel setEnabled:NO];

是否影響編譯或性能方面的東西嗎?

+0

你讀過[Apple文檔](https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/ProgrammingWithObjectiveC/EncapsulatingData/EncapsulatingData.html)嗎? – CRD

+0

沒有找到它,我搜索了iOS。我猜它是一樣的。 TY – lizzy91

回答

3

完全沒有區別。就編譯器而言,這兩種語法是相同的,並且它們導致相同的二進制文件。隨意使用任一種語法可以互換。

一般而言,一類Foo與屬性bar

@interface Foo: NSObject 
@property bar; 
@end 

以下吸氣劑是相同的:

baz = [foo bar]; 
baz = foo.bar; 

和下列設置器是相同的:

foo.bar = baz; 
[foo setBar:baz]; 

的編譯器進行翻譯;你可以使用任何語法而不用擔心。

相關問題