begin process at 2012 02 10 01:54:27
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C#

 > 

Système

 > 

Autre

 > 

Généricité et héritage


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Généricité et héritage

mardi 3 mars 2009 à 11:05:04 | Généricité et héritage

Julien237

Hello,
Une petite question à propos des classes génériques :
Comment généraliser le type d'une classe générique en ne prenant pas compte du paramètre générique ?

Par exemple si j'ai une classe générique MyGeneric<T>, comment puis-je déclarer un tableau de MyGeneric pour des T quelconques, par exemple :
MyGeneric[] array = new MyGeneric[] (new MyGeneric<int>(), new MyGeneric<double>());

Est-ce possible ?
Ou dois-je obligatoirement faire dériver MyGeneric<T> de MyClass qui comprendrait tous les membres "non-génériques" ?


Julien.
mardi 3 mars 2009 à 11:23:16 | Re : Généricité et héritage

krimog

Administrateur CodeS-SourceS
Salut

Une solution très simple, c'est de faire une collection de <System.Object>, tous les objets en dérivant forcément.

Krimog :
while (!succeed = try()) ;

mardi 3 mars 2009 à 11:25:53 | Re : Généricité et héritage

Julien237

Moui d'accord, mais ça ne change pas grand chose, lorsque je veux utiliser les membres de cette collection, je dois faire des casts en MyGeneric<T>, sans connaitre le T, je ne sais donc pas faire les cast, et pas utiliser les membres "non-génériques" de MyGeneric...

J'ai finalement adopté la solution de faire dériver MyGeneric<T> de MyGeneric (sans <T>) qui implémente toutes les méthodes "non-génériques"...


Julien.


Cette discussion est classée dans : généricité, génériques, héritage, générique, mygeneric


Répondre à ce message

Sujets en rapport avec ce message

ASP.NET + héritage de classe [ par Volfield ] Bonjour, J'ai fait une classe Conf qui hérite de la classe Page.Le problème c'est que quand je fais mes autres pages qui hérite de Conf, il ne connais Héritage visuel [ par Viracoccha ] Quand je veux hériter d'un de mes "windows form" le concepteur de vue m'affiche cette erreur: "La classe de base n' a pas pu être chargée. Vérifiez qu [C#]Comment faire de l'héritage multiple ? [ par oberown ] Comment faire pour qu'une classe A hérite de la classe B et C ? Enlever l'héritage d'une classe [ par JuS ] Je m'explique ...Existe-t-il une méthode permettant de ne pas avoir accès aux méthodes héritées d'une classe ? (à part la méthode de créer les mêmes m Héritage [ par fdouieb ] Bonjour,Je souhaite savoir comment dans un héritage je peux bloquer le script en amont. bordel d'héritage [ par reyman ] Rien de mieux qu'un exemple pour se faire comprendre :namespace A{ public class a1 { a2 objet; // ma propriété a1() Héritage multiple [ par ricklekebekoi ] prenons trois classesBaseMorpionGame;BaseTwoPlayerGame;BaseIAGame;Ensuite, deux autres classes:SingleMorpionGame;TwoPJMorpionGame;Je souhaiterais que Protected ou private ? [ par thiosyiasar ] Protected ou Private ? Salut à tous. En fait j'ai une petite question qui me turlupine un peu depuis quelques temps. J'ai débuté la programmation orie [C# - Treeview] Héritage de contrôles [ par nerix27 ] Bonjour, je voudrais personnaliser un peu le treeview standard présent dans le framework... En dérivant du contrôle treeview standard, est-il possib Héritage control WinForm MenuItem [ par cbu ] Bonjour, je souhaite ajouter une propriété ID par ex à un control MenuItem.. Je me suis dis qu'il fallait créer une classe MenuItemPerso qui hérit


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,296 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales