我有一個NSFoo類,有一個酒吧屬性。我想要一個類方法來獲取帶有bar屬性集的NSFoo實例。這將與NSString stringWithFormat類方法類似。所以它的簽名是:如何在Objective-C中創建分配器類方法?
+ (NSFoo *) fooWithBar:(NSString *)theBar;
所以,我只能說這是這樣的:
NSFoo *foo = [NSFoo fooWithBar: @"bar"];
我想這可能是正確的:
+ (NSFoo *) fooWithBar:(NSString *)theBar {
NSFoo *foo = [[NSFoo alloc] init];
foo.bar = theBar;
[foo autorelease];
return foo;
}
是否正確?
您可以通過在最後兩行合併成回報簡化它一點點[foo autorelease]; – 2009-04-22 15:44:27
作爲一個方面說明,NS前綴是爲可可類保留的(最初是NextStep類庫)。如果需要防止名稱衝突,則應該爲自己的類使用自己的前綴。 – 2009-04-22 20:02:56