Si consideri il seguente codice:Come vincolare un generico per essere di tipo enum?
class Base<T>
{
//Base members
}
voglio il generico T di essere un enum (utilizzando i vincoli se possibile). Come posso farlo in C#?
EDIT:
utilizzo di contratti di codice -introduced da Akash Kava- sembra anche un bel modo. Sono riuscito a farlo produrre un errore di run-time che è inutile. Here è il codice che ho provato. Dovrebbe essere possibile generare un avviso di tempo di compilazione ma non riesco a farlo funzionare.
Questo è un duplicato, giusto? – BoltClock
Link per duplicare per favore? – atoMerz
Molti di questi, ma uno di quelli canonici che posso trovare è http://stackoverflow.com/questions/79126/create-generic-method-constraining-t-to-an-enum, che sebbene riguardi un metodo generico non una classe generica, i vincoli di tipo funzionano esattamente allo stesso modo. – BoltClock