11

Objective-C は "a la Smalltalk" のブロックをサポートしていますか?

Smalltalk では、ブロックは、他の言語で見られる「クロージャー」、「ラムダ式」、または「名前のない関数」に似ています。

4

2 に答える 2

11

はい: http://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/Blocks/Articles/00_Introduction.html

デフォルトでは、XCode 3.2 以降に付属する Objective-C 2.0 のバージョンでのみサポートされています。つまり、公式のビルド ツールを使用する場合は、Snow Leopard が必要になります。10.5 で考えられる回避策については、http: //thirdcog.eu/pwcblocks/#leoiphoneで説明しています。

于 2010-10-13T18:48:31.510 に答える
6

はい、次の例を見てください。

[[myString componentsSeparatedByString:@"\n"] enumerateObjectsWithOptions:NSEnumerationConcurrent usingBlock:^(id obj, NSUInteger idx, BOOL *stop) {
    NSString *line = (NSString *)obj;
    //do what your going to do with line...
}];
于 2010-10-13T18:47:03.300 に答える