J'ai une classe public class foubar: fou Comment puis-je obtenir dynamiquement une instance d'une classe de base à partir d'une classe héritée?
a ses propriétés fou et le fait foubar J'ai créé une instance de foubar et des valeurs de consigne à toutes les propriétés, y compris les classes de base. Maintenant j'ai besoin d'une instance de fou qui a les valeurs de propriété qui sont dans foubar. Il est vrai que je pourrais créer une nouvelle instance de fou et écrire du code qui peuplerait cette nouvelle instance à partir d'une instance foubar mais cela signifie que je dois changer de code chaque fois que les propriétés de la classe de base changent.Je voudrais quelque chose qui fonctionnerait comme celui-ci, où FB est une instance de foubar
test = fou (fou) FB;
Cela "fonctionne" en C#, mais le test est vraiment de type foubar. Je n'ai besoin que de rien, rien d'autre,
Je veux un moyen de renvoyer dynamiquement une instance d'une classe de base remplie à partir de l'instance data/instance de la classe dérivée.
Des idées?
Pourquoi en avez-vous besoin pour * seulement * être la classe de base? –
Pourquoi avez-vous besoin du type réel pour être fou? Cela me semble très "désobéissant" ... –
J'ai une méthode qui ne prend que le type fou, ne prendra pas de foubar. La classe de base fou et la méthode qui prend fou sont hors de mon contrôle. – mike