-1

それを考えると…</p>

@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

4

1 に答える 1

2

メソッド宣言は、構文的に変数宣言と同じではありません。それらは異なる構文を持ち、特定のコンテキストでのみ発生します。

Objective-C の構文を変更して、コンマで区切られた複数の変数宣言を許可することは可能でしょうか? はい、そうなります — しかし、引数を含むと宣言がより複雑になる可能性があるため、想像しているよりも大きな変更が必要になります。また、人々が読みにくい宣言を書けるようにするためだけに、大幅な構文変更を行ってもほとんど意味がありません。それには文字通りゼロのメリットがあります。

于 2013-04-05T17:11:52.057 に答える