question assez basique en c #, Comment puis-je faire cela? p> p>
3 Réponses :
Si vous souhaitez créer votre propre instance de t, alors vous avez besoin de définir une contrainte si vous voulez passer dans l'obj alors Vous devez le laisser dans le constructeur p> nouvelle () code>
La réponse est exactement ce que je cherchais aussi! Merci!
Vous pouvez utiliser le neuf Contrainte
Dans votre définition de classe générique Pour vous assurer que T a un constructeur par défaut que vous pouvez appeler. Les contraintes vous permettent d'informer le compilateur de certains comportements (capacités) que le paramètre générique doit adhérer à.
class Data<T> where T : new() { T obj; public Data() { obj = new T(); } }
Ceci peut aider: http: // pooyakhamooshi.blogspot.com/2011/06/how-a-insantiate-generic-type-with.html P>
Un suivi de quelqu'un qui s'intéresse à cela. C'est une différence majeure entre les génériques C # génériques et les modèles C ++, nous devons imposer des contraintes sur des types pour le compilateur pour reconnaître les propriétés du type. Veuillez lire ce MSDN.MicRosoft.com/en- US / Bibliothèque / ...