Là một nhà phát triển Java đang đọc tài liệu Objective-C 2.0 của Apple: Tôi tự hỏi " gửi tin nhắn đến nil " nghĩa là gì - hãy để một mình nó thực sự hữu ích như thế nào. Lấy một đoạn trích từ tài liệu:
Có một số mô hình trong Ca cao tận dụng thực tế này. Giá trị được trả về từ một tin nhắn thành nil cũng có thể hợp lệ:
- Nếu phương thức trả về một đối tượng, bất kỳ kiểu con trỏ nào, bất kỳ vô hướng số nguyên nào có kích thước nhỏ hơn hoặc bằng sizeof (void *), float, double, long double hoặc long long, thì thông báo được gửi đến nil sẽ trả về 0 .
- Nếu phương thức trả về một cấu trúc, như được định nghĩa bởi Hướng dẫn Gọi hàm Mac OS X ABI được trả về trong sổ đăng ký, thì một thông báo được gửi đến nil sẽ trả về 0,0 cho mọi trường trong cấu trúc dữ liệu. Các kiểu dữ liệu cấu trúc khác sẽ không được điền bằng số không.
- Nếu phương thức trả về bất kỳ thứ gì khác với loại giá trị nói trên, giá trị trả về của một thông báo được gửi đến nil là không xác định.
Java có khiến bộ não của tôi không thể dò ra lời giải thích ở trên không? Hay có thứ gì đó mà tôi thiếu có thể làm cho thứ này trở nên rõ ràng như thủy tinh?
Tôi hiểu ý tưởng về tin nhắn / người nhận trong Objective-C, tôi chỉ đơn giản là nhầm lẫn về một người nhận sẽ xảy ra nil
.