2009-12-16 57 views
30

Dấu mũ trong mục tiêu C có nghĩa là gì?Dấu mũ trong mục tiêu C

tức là.

void (^handler)(NSInteger);

từ Mac Dev Center

+0

Điều đáng lưu ý là các khối là phần mở rộng C được Apple thêm vào theo [Wikipedia] (http://en.wikipedia.org/wiki/Blocks_ (C_language_extension)). – styfle

+0

Nó tương tự như lambda trong Lisp hoặc Python –

Trả lời

30

Tùy thuộc vào ngữ cảnh. Trong ví dụ bạn hiển thị, nó được sử dụng để biểu thị một Block. Biểu tượng dấu mũ cũng là bitwise XOR operator trong ngôn ngữ dựa trên C - đó là điều mà hầu hết các lập trình viên sẽ nhận ra nó, vì vậy thật tốt khi hiểu rằng nó có thể tùy thuộc vào vị trí của nó, giống như *, v.v.

Và chúng tôi đang đề xuất các tham chiếu, đơn giản chỉ cần bao gồm Apple's official Blocks reference.

10

Các caret đại diện cho một khối hoặc đóng cửa có thể mang theo xung quanh hoặc chứa phạm vi từ vựng. Chúng tương tự như các khối trong ruby. Một tài liệu tham khảo tuyệt vời có thể được tìm thấy here.

+0

Bạn có thể cung cấp thêm chi tiết không? – Casebash

+2

đã thêm một tham chiếu ở trên sẽ giúp bạn bắt đầu – ennuikiller

3

Giống như ennuikiller đã nói, nó chỉ ra một khối. Nếu bạn muốn tìm hiểu thêm, Ars Technica có một chiều sâu tuyệt vời review của Snow Leopard, không chỉ mô tả các khối và đóng cửa, mà còn là Grand Central Dispatch và tất cả các công nghệ mới khác trong Mac OS X 10.6. Rat khuyen khich.