Je suis à la recherche d'un moyen de créer un wrapper générique pour n'importe quel objet.
L'objet wrapper se comporte exactement comme la classe qu'il enveloppe, mais il peut avoir plus de propriétés, de variables, de méthodes, etc., par exemple. le comptage d'objets, la mise en cache, etc.Enveloppe C# pour les objets
Dites la classe wrapper appelé Wrapper, et la classe à envelopper appelée place et a le constructeur place (à double edge_len) et les propriétés/méthodes EdgeLength et Area, je voudrais l'utiliser comme suit:
Wrapper<Square> mySquare = new Wrapper<Square>(2.5); /* or */ new Square(2.5);
Console.Write("Edge {0} -> Area {1}", mySquare.EdgeLength, mySquare.Area);
il est évident que je peux créer une telle classe wrapper pour chaque classe que je veux envelopper, mais je suis à la recherche d'une solution générale, i. e) Wrapper<T>
qui peut gérer à la fois les types primitifs et composés (bien que dans ma situation actuelle, je serais content de simplement emballer mes propres classes).
Suggestions?
Merci.
Vous ne pouvez pas faire cela avec C# jusqu'à 3.0. La version 4.0, cependant, pourrait vous permettre de le faire via le nouveau système de type dynamique. –
Pourriez-vous élaborer? Merci. – Haggai