-1
鑑於...爲什麼不可能爲每行聲明多個方法原型?
@interface Hog : NSObject { NSUInteger one, two, three; }
@property (strong, nonatomic) NSString *four, *five, *six;
-(void) seven;
@end
@implementation Hog
static CGFloat f, ff, fff;
- (NSString*) six { return _four = _five = _six = @"sexy"; }
- (void) seven { one = two = three = 33;
f = ff = fff = 6.66;
SEL sevenSelect = @selector(seven);
NSLog(@" %ld, %0.2f, %@, %@",
three, fff, self.six, NSStringFromSelector(sevenSelect)); }
@end
int main(int argc,char *argv[]){ Hog *u = Hog.new; [u seven];}
Output: 33, 6.66, sexy, seven
然後..爲什麼沒有可能的話,要在頭,等申報
-(void)seven, eight, nine;
?有什麼不同? objc-c
不只是對待IMP
,或任何它是,就像其他變量,塊等一樣?爲什麼即使打擾原型,反正呢?特別是,如果它是在類擴展中,那麼爲什麼還要麻煩,而且你只是直接在下面寫方法。這似乎只是一個錯誤的機會,不必要的重複,不是嗎?我知道我錯了,但我要求接受教育,所以繼續。
因爲它不是。這是一種語言(C)。它工作的方式。 - 當然,在現代Objective-C中,無論如何你都不需要聲明方法(除非你在.h文件中公開它們)。 – matt 2013-04-05 16:57:42
這對於像' - (id)initWithObjects:(id)firstObj,...'這樣的原型來說會很模糊。 – 2013-04-05 17:02:43