2013-09-03 37 views

Trả lời

6

libextobjc sử dụng thủ thuật tiền xử lý để làm cho bạn nghĩ rằng đó là @command.

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

Lưu ý số thiếu @ trên try. Vì vậy, @weakify mở rộng thành @try {} @finally {} [injected code].

Bạn có thể sử dụng cùng một mẹo, nhưng tôi khuyên bạn nên gắn bó với các macro đơn giản.

+0

Ồ, tôi hiểu. Tôi đã thấy đoạn mã này, nhưng không chú ý thử khối. Cảm ơn! :) – asdf

Các vấn đề liên quan