Tôi tò mò những gì mọi người nghĩ. Trong SQL (ít nhất là trong oracle) NULL dịch khái niệm "Tôi không biết giá trị" vì vậy NULL = NULL là sai. (Có lẽ nó thực sự dẫn đến một NULL mà sau đó được đúc để giả hoặc một cái gì đó như thế ...)Nên null == null là đúng khi so sánh các đối tượng?
Điều này có ý nghĩa với tôi, nhưng trong hầu hết các ngôn ngữ OO null có nghĩa là "không tham khảo" vì vậy null == null nên có lẽ đúng. Đây là cách làm thông thường trong C# ví dụ khi ghi đè bằng. Mặt khác, null vẫn thường được sử dụng để có nghĩa là "Tôi không biết" trong ngôn ngữ hướng đối tượng và thực hiện null == null thành false có thể dẫn đến mã có ý nghĩa hơn một chút đối với một số miền nhất định.
Hãy cho tôi biết suy nghĩ của bạn.
eh, trong đó null có nghĩa là "Tôi không biết" bằng ngôn ngữ OO? Và làm thế nào bạn sẽ kiểm tra con trỏ null nếu 'null == null' trả về' false'? – hasen