2008-12-04 12 views

Respuesta

11

decimal no está solo aquí; DateTime, TimeSpan, Guid, etc. también son tipos personalizados. Supongo que la razón principal es que no se asignan a primativos de CPU. float (IEEE 754), int, etc. son bastante ubicuos aquí, pero decimal está hecho a medida para .NET.

Esto realmente solo causa un problema si desea hablar con los operadores directamente a través de la reflexión (ya que no existen para int, etc.). No puedo pensar en otros escenarios donde notarías la diferencia.

(en realidad, todavía hay estructuras, etc., para representar a los demás - que sólo se carece de la mayor parte de lo que se podría esperar a ser en ellos, tales como operadores)

+1

Creo que el punto es que decimal es el único tipo que recibe su propia palabra clave en C#, pero no es tratado especialmente por el CLR. –

Cuestiones relacionadas