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

C# Discussion :

Initialisation d'un tableau dans une classe


Sujet :

C#

  1. #1
    Invité
    Invité(e)
    Par défaut Initialisation d'un tableau dans une classe
    Bonjour,

    Etant débutant en C# (et en language orienté objet), j'ai besoin d'aide pour un problème tout simple.

    En simplifiant a fond, ca donne ceci.
    J'ai une classe Nombre qui ne fait pas grand chose a part stocker un int. Notons que je tiens a ce qu'il y ait un constructeur :

    Code c# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    class Nombre
    {
        public int nombre;
        public Nombre(int a) {nombre = a; }
    }

    A côté de ca, j'ai une classe Liste qui doit être un tableau de Nombre (la taille est definie lors de la création, elle ne changera jamais). Et c'est la qu'est le problème :

    Code c# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    class Liste
    {
        public Nombre[] liste;
        public Liste()
        {
            liste = new Nombre[50]; // Erreur !
        }
    }

    Initialiser mon tableau de Nombre ne fonctionne pas comme je le veux car le constructeur de Nombre à besoin d'un parametre pour s'initialiser. J'aimerais pouvoir faire :

    Code c# : Sélectionner tout - Visualiser dans une fenêtre à part
    liste = new Nombre(22)[50];

    Mais ça ne fonctionne pas. Comment résoudre mon problème ?

    Merci beaucoup,
    Julien.
    Dernière modification par smyley ; 25/04/2009 à 20h50. Motif: Rajout des balises [CODE]

  2. #2
    Expert éminent
    Avatar de smyley
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    6 270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 6 270
    Points : 8 344
    Points
    8 344
    Par défaut
    Code c# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    class Liste
            {
                public Nombre[] liste;
                public Liste()
                {
                    liste = new Nombre[50]; // Erreur !
                    for (int i = 0; i < 50; i++)
                    {
                        liste[i] = new Nombre(22);
                    }
                }
            }
    ?

    (au fait, tu as pensé à lire les cours sur le langage C# ?)

  3. #3
    Expert éminent
    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 : 46
    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
    Points : 7 660
    Points
    7 660
    Par défaut
    Il n'y a pas besoin de constructeur par défaut (sans argument) pour initialiser un tableau d'objets, je ne vois pas comment tu peux avoir une erreur à ce moment . Ou alors j'ai rien compris à la question

  4. #4
    Expert éminent
    Avatar de smyley
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    6 270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 6 270
    Points : 8 344
    Points
    8 344
    Par défaut
    Citation Envoyé par StormimOn Voir le message
    Il n'y a pas besoin de constructeur par défaut (sans argument) pour initialiser un tableau d'objets, je ne vois pas comment tu peux avoir une erreur à ce moment
    Bah justement, j'ai pris le code tel quel et il compile ...

    Le détail par contre c'est que les objets ne sont pas initialisés ... c'est peut être ce qui cause l'erreur après ...

  5. #5
    Expert éminent
    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 : 46
    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
    Points : 7 660
    Points
    7 660
    Par défaut
    Ok, il confond initialisation du tableau et initialisation des objets contenu dans le tableau. A ce moment je plussoie smyley en t'invitant à lire des cours C#, parce que c'est le genre de questions que l'on pourrait facilement éviter.

  6. #6
    Invité
    Invité(e)
    Par défaut
    Merci beaucoup de vos réponses. Problème résolu.

    >il confond initialisation du tableau et initialisation des objets contenu dans le tableau.

    En effet, c'est exactement ce qui s'est passé.

    > A ce moment je plussoie smyley en t'invitant à lire des cours C#, parce que c'est le genre de questions que l'on pourrait facilement éviter.

    Ce que j'ai fait, j'ai même acheté un bouquin (que j'ai lu). Je me suis juste posé trop de questions. Désolé pour l'embarras. Merci encore.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 4
    Dernier message: 09/06/2008, 16h32
  2. [Tableaux] Gestion tableau dans une classe
    Par lolodev dans le forum Langage
    Réponses: 5
    Dernier message: 06/08/2007, 13h19
  3. [Tableaux] Déclaration d'un tableau dans une classe
    Par rochenico dans le forum Langage
    Réponses: 4
    Dernier message: 22/12/2006, 11h29
  4. Comment définir un tableau dans une classe?
    Par Pragmateek dans le forum Collection et Stream
    Réponses: 11
    Dernier message: 30/04/2006, 20h34
  5. tableau dans une classe
    Par blastmanu dans le forum C++
    Réponses: 6
    Dernier message: 18/04/2006, 14h18

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