Tengo curiosidad por lo que todos piensan. En SQL (al menos en Oracle) NULL se traduce conceptualmente a "No sé el valor", por lo que NULL = NULL es falso. (Tal vez realmente da como resultado un NULO que luego se convierte en falso o algo así ...)¿Debe null == null ser verdadero al comparar objetos?
Esto tiene sentido para mí, pero en la mayoría de los lenguajes de OO null significa "sin referencia", por lo que nulo == nulo probablemente ser cierto. Esta es la forma habitual de hacer las cosas en C#, por ejemplo, al anular Iguales.
Por otro lado, null todavía se usa con frecuencia para significar "No sé" en lenguajes orientados a objetos y la implementación de null == null como falso podría dar como resultado un código que es ligeramente más significativo para ciertos dominios.
Dime lo que piensas.
eh, donde null alguna vez significa "No sé" en un idioma OO? ¿Y cómo comprobaría los punteros nulos si 'null == null' devolvía' false'? – hasen