Domanda

In base alla documentazione MSDN sulla StringComparer.OrdinalIgnoreCase proprietà:

  

La proprietà OrdinalIgnoreCase in realtà restituisce un'istanza di una classe anonima derivata dalla StringComparer classe.

Si tratta di una funzione Sono familiarità con-anonimi tipi con eredità? Oppure con "classe anonima" ha l'autore significa semplicemente "classe interna derivante da StringComparer, non visibile per il codice cliente"?

È stato utile?

Soluzione

Se si guarda il codice sorgente per StringComparer, si può vedere che OrginalIgnoreCase restituisce un'istanza di OrdinalComparer, che è derivata da StringComparer.

Non c'è niente di 'anonymous' su questo che posso vedere, è solo che si tratta di interno e quindi non si può vedere dal di fuori del quadro.

Altri suggerimenti

Non è un tipo anonimo nel normale C # significato del termine.

E 'solo un tipo che è interno, in modo da non si conosce il nome di essa. Non si può fare riferimento al tipo esatto all'interno del codice

compilatore in grado di creare i tipi anonimi che ereditano da un altro tipo - non si può. E 'un peccato, davvero come sarebbe una caratteristica fredda per creare un tipo anonimo al volo che o eredita da un'altra classe o implementa un'interfaccia.

Tipo

Anonymous è anonymous per noi non è il CLR e compilatore. Compilatore utilizza una denominazione divertente che include <> in nome e solo compilatore può farlo! e forse Chuck Norris ...

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top