IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Forms Discussion :

Classe Array et héritage


Sujet :

Windows Forms

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de stdebordeau
    Homme Profil pro
    Statisticien
    Inscrit en
    Septembre 2007
    Messages
    241
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45

    Informations professionnelles :
    Activité : Statisticien
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2007
    Messages : 241
    Par défaut Classe Array et héritage
    Salut

    Je plante en essayant de créer une classe dérivée de la classe Array. apparement la classe Array est NotInheritable (j'en suis pas sure, ce n'est pas dit explicitement dans msdn).

    j'ai la possibilité d'utiliser les méthodes d'extension mais cette solution ne m'enchante pas.

    Pourriez vous me confirmer que la classe Array ne peut être héritée, et éventuellement quelles sont les alternatives qui s'offrent à moi.

  2. #2
    Membre éclairé Avatar de stdebordeau
    Homme Profil pro
    Statisticien
    Inscrit en
    Septembre 2007
    Messages
    241
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45

    Informations professionnelles :
    Activité : Statisticien
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2007
    Messages : 241
    Par défaut
    j'explicite ici pourquoi je veux une classe hérité de Array.

    En fait je souhaite utiliser des triangles de données (stockés dans des tableaux) et auxquels certains paramètres sont associés (par exemple importance relative à accorder à la dernière diagonale).

    j'ai ainsi besoin de propriétés bien spécifiques pour mes triangles d'où la nécessité d'une classe bien particulière.

  3. #3
    Membre chevronné
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    327
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Janvier 2009
    Messages : 327
    Par défaut
    Bonjour,
    Je ne suis pas sur d'avoir entièrement compris ton problème mais en faite, tu veux faire une collection de ton ta classe triangle soit une collection de triangle ?
    Confirme moi si c'est ca, ce n'est pas la peine de dériver la classe Array.
    Il y a de nombreux exemples tout fait.

    A bientôt

  4. #4
    Membre éclairé Avatar de stdebordeau
    Homme Profil pro
    Statisticien
    Inscrit en
    Septembre 2007
    Messages
    241
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45

    Informations professionnelles :
    Activité : Statisticien
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2007
    Messages : 241
    Par défaut
    Merci wakan.

    En fait je veux une classe triangle hérité de Array, avec ajout de propriétés, méthodes, évênements.

    hérité de Array pour profiter de la facilité de manipulation et des nombreuses fonctions des tableaux.

    mais ayant ces propres propriétés, méthodes et évênement.

    exemple avec un objet triangle nommé ObjTri

    propriété : importance à accorder à la dernière diagonale
    ObjTri.ImportanceDernDiag

    Méthode : Liquidé le triangle "méthode métier"
    ObjTri.Run

    évênement : déclenché si somme de toutes les cellules = 0
    ObjTri.SiSommeNull

  5. #5
    Membre chevronné
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    327
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Janvier 2009
    Messages : 327
    Par défaut
    Re,
    Une classe qui implement Inumerable ne te conviendrais pas ?
    http://msdn.microsoft.com/fr-fr/libr...numerable.aspx

    Après tu peux toujours ajouter des fonctionnalitées comme les évèments le foreach etc...

    A bientôt

  6. #6
    Membre expérimenté
    Avatar de StormimOn
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2005
    Messages
    2 593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2005
    Messages : 2 593
    Par défaut
    Tu peux faire une classe contenant un tableau pour gérer la liste interne. Par exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    public class MyClass
    {
        ...
    }
     
    public class MyClassArray
    {
        private MyClass[] _array;
     
        public MyClass this[int index]
        {
            get { return _array[index]; }
            set { _array[index] = value; }
        }
     
        public MyClassArray(int length)
        {
            _array = new MyClass[length];
        }
     
        ...
    }
    Tu peux ajouter ce que tu veux ainsi.

    Ou faire une classe dérivée de Collection<T>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    public class CollectionMyClass : Collection<MyClass>
    {
        ...
    }
    C'est la même chose qu'avec le tableau, une List<T> en interne sert à stocker les données. De base tu auras accès aux méthodes d'ajout, de suppression ainsi que la possibilité d'agir sur l'insertion, la modification, la suppression ou le vidage de la collection (il y a des méthodes à overrider à cet effet). Tu pourras ensuite ajouter ce que tu veux autour.

    P.S. : le code est en C#, mais le principe est là

Discussions similaires

  1. Classes amies et héritage simple
    Par nicolas66 dans le forum C++
    Réponses: 1
    Dernier message: 27/02/2008, 08h27
  2. [POO] dérivation / classe Array pour IE
    Par Herode dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 21/11/2007, 21h52
  3. Comment hériter de deux classes ? (que signifie héritage multiple ?)
    Par adil_vpb dans le forum Débuter avec Java
    Réponses: 3
    Dernier message: 23/10/2007, 19h27
  4. Réponses: 17
    Dernier message: 27/08/2007, 18h35
  5. Foncteur, classes templates et héritage
    Par Floréal dans le forum C++
    Réponses: 8
    Dernier message: 17/06/2007, 21h56

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo