¿Puede un tipo anónimo heredar de otro tipo?
-
28-09-2019 - |
Pregunta
De acuerdo con la documentación de MSDN en la StringComparer.OrdinalIgnoreCase
propiedad:
La propiedad OrdinalIgnoreCase realidad devuelve una instancia de una clase anónima derivado de la clase StringComparer .
¿Es esta una característica que estoy familiarizado con los tipos anónimos con la herencia? O "clase anónima" Por qué el autor simplemente significa "clase interna derivada de StringComparer
, no es visible para el código de cliente"?
Solución
Si nos fijamos en el código fuente de StringComparer, se puede ver que OrginalIgnoreCase devuelve una instancia de OrdinalComparer, que se deriva de StringComparer.
No hay nada 'anónimo' sobre el que yo puedo ver, es sólo que es interno por lo que no se puede ver desde fuera del marco.
Otros consejos
No es un tipo anónimo en el normal de C # significado del término.
Es sólo un tipo que es interno, por lo que no conoce el nombre de la misma:. No puede referirse al tipo exacto dentro de su código
El compilador puede crear tipos anónimos que heredan de otro tipo - no se puede. Es una lástima, de verdad, ya que sería una función interesante para crear un tipo anónimo sobre la marcha, ya sea que hereda de otra clase o implementa una interfaz.
Anónimos es anónimo a nosotros no CLR y compilador. Compilador utiliza una nomenclatura divertida que incluye <> en el nombre del compilador y sólo puede hacer eso! y tal vez Chuck Norris ...