2013-09-03 3 views

risposta

6

libextobjc utilizza preprocessore inganno per farvi pensare che sia un @command.

#define weakify(...) \ 
    try {} @finally {} \ 
    metamacro_foreach_cxt(ext_weakify_,, __weak, __VA_ARGS__) 

Nota dispersi @ sul try. Quindi @weakify si espande in @try {} @finally {} [injected code].

È possibile utilizzare lo stesso trucco, ma suggerisco di attenersi ai semplici macro.

+0

Oh, capisco. Ho già visto questo pezzo di codice, ma non ho notato il blocco try. Grazie! :) – asdf