开发者

Caret in objective C

开发者 https://www.devze.com 2022-12-14 07:02 出处:网络
What doe开发者_Go百科s the caret in objective C mean? ie. void (^handler)(NSInteger); from Mac Dev CenterIt depends on the context. In the example you show, it\'s used to denote a Block. The caret

What doe开发者_Go百科s the caret in objective C mean?

ie.

void (^handler)(NSInteger);

from Mac Dev Center


It depends on the context. In the example you show, it's used to denote a Block. The caret symbol is also the bitwise XOR operator in C-based languages — that's what most programmers would identify it as, so it's good to understand that it can be both depending on where it appears, much like *, etc.

And while we're suggesting references, one simply has to include Apple's official Blocks reference.


The caret represents a block or a closure which carries around or contains the lexical scope. They are similar to blocks in ruby. An excellent reference can be found here.


Like ennuikiller said, it indicates a block. If you want to learn more, Ars Technica had an excellent in-depth review of Snow Leopard that described not only blocks and closures, but also Grand Central Dispatch and all the other new technologies in Mac OS X 10.6. Highly recommended.

0

精彩评论

暂无评论...
验证码 换一张
取 消