2010-08-23 14 views
6

Es ist an example on cdecl die (double (^)(int))foofoo bedeutet Guss foofoo in den Block (int) wiederkehrende Doppel geht.Was (double (^) (int)) ist foofoo

Was bedeutet es, foofoo in einen "Block" von Int zu werfen? Was bedeutet das Symbol ^ genau in diesem Zusammenhang. Normalerweise ist es bitweise XOR.

Antwort

12

Es ist eine GCC-Erweiterung von Apple, und auch in Clang implementiert. Blöcke sind kleine unbenannte Funktionen und diese Syntax ist der Typ eines Blocks. Siehe Block Language Spec.