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

MFC Discussion :

Tableau d'objets


Sujet :

MFC

  1. #1
    Débutant
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2004
    Messages
    452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Janvier 2004
    Messages : 452
    Points : 324
    Points
    324
    Par défaut Tableau d'objets
    Comment on déclare un tableau d'objets en Visual C++ svp?

    Je m'explique j'ai une classe Avion dont voici le code:
    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
     
    //Déclaration de la classe Avion
    class Avion  
    {
    private:
    	CString immatriculation;
    	CString marque;
    	CString type;
    	CString provenance;
    public:
    	Avion(CString,CString,CString,CString);
    	~Avion();
    	CString getImmatriculation();
    	void setImmatriculation(CString);
    	CString getMarque();
    	void setMarque(CString);
    	CString getType();
    	void setType(CString);
    	CString getProvenance();
    	void setProvenance(CString);
    };
    Je voudrais déclarer un tableau d'Avion
    j'ai essayé ça comme code dans la classe
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    // Construction
    public:
     
    	CAeroportDlg(CWnd* pParent = NULL);	// standard constructor
     
    	Avion Tour[10]; //tableau de pointeurs d'Avion
    Mon tableau c'est Tour et quand je compile il me marque l'erreur suivante à la ligne (Avion Tour [10] :
    Compiling...
    AeroportDlg.cpp
    C:\Eleves\bob\PTI 4 - POO Avion\Aeroport\AeroportDlg.cpp(19) : error C2512: 'Avion' : no appropriate default constructor available
    Error executing cl.exe.

    Aeroport.exe - 1 error(s), 0 warning(s)
    Pouvez vous m'aider svp, je rappelle que je veux déclarer un tableau d'Avion (donc d'objets)...

  2. #2
    Membre émérite
    Avatar de la drogue c'est mal
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    2 253
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2002
    Messages : 2 253
    Points : 2 747
    Points
    2 747
    Par défaut
    dans ta definition de la classe Avion, tu as dit que pour construire un Avion il faut lui preciser 3 CString

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Avion(CString,CString,CString,CString);
    c'est la que vient l'erreur de compile puisque dans
    il n'y a rien de preciser donc pas possible de creer

  3. #3
    Débutant
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2004
    Messages
    452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Janvier 2004
    Messages : 452
    Points : 324
    Points
    324
    Par défaut
    ok mais comment on le déclare le tableau alors? Comme ça?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Avion (CString,CString,CString,CString) Tour[10]
    parce que si c'est ça il me renvoie deux erreurs:
    Compiling...
    AeroportDlg.cpp
    c:\eleves\bob\pti 4 - poo avion\aeroport\aeroportdlg.h(24) : error C2146: syntax error : missing ';' before identifier 'Tour'
    c:\eleves\bob\pti 4 - poo avion\aeroport\aeroportdlg.h(24) : error C2501: 'Tour' : missing storage-class or type specifiers
    Error executing cl.exe.

    Aeroport.exe - 2 error(s), 0 warning(s)
    J'ai pas d'autre idée donc si vous pouvez m'éclairer ou me donner le code de la déclaration du tableau il me manque plus que ça pour que ma dernière PTI marche.

  4. #4
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Points : 17 323
    Points
    17 323
    Par défaut
    salut ,
    il faut que tu crees dasn ta classe un contructeur par defaut :
    sans arguments ,ou tous les arguments avec un valeur par defaut.


  5. #5
    Membre régulier
    Inscrit en
    Février 2004
    Messages
    102
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 102
    Points : 111
    Points
    111
    Par défaut
    Moi j'utilise les CArray. Pour ton exemple
    CArray<Avion*, Avion*> m_TabLpAvions;

  6. #6
    Expert éminent sénior
    Avatar de Luc Hermitte
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2003
    Messages
    5 279
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Août 2003
    Messages : 5 279
    Points : 11 015
    Points
    11 015
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    std::vector<Avion> t;
    t.push_back(Avion("Avion1", "bla", "bli"));
    t.push_back(Avion("Avion2", "bli", "bla"));
    Cela requiert toutes fois que la classe Avion soit copiable (constructeur plus opérateur qui vont bien).

  7. #7
    Débutant
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2004
    Messages
    452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Janvier 2004
    Messages : 452
    Points : 324
    Points
    324
    Par défaut
    Comment on fait pour mettre le constructeur Avion par défaut? parce que je pense que la déclaration est bonne...

  8. #8
    Membre régulier
    Inscrit en
    Février 2004
    Messages
    102
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 102
    Points : 111
    Points
    111
    Par défaut
    Avion()

Discussions similaires

  1. retour tableau d'objets par service web axis jboss
    Par TrollMaster dans le forum XML/XSL et SOAP
    Réponses: 6
    Dernier message: 27/11/2005, 21h45
  2. Tableau d'objets de type différents
    Par Hell dans le forum C++
    Réponses: 9
    Dernier message: 11/01/2005, 22h57
  3. Sauvegarde / Chargement d'un tableau d'objets
    Par Naruto dans le forum Langage
    Réponses: 3
    Dernier message: 18/05/2004, 14h34
  4. [VB6]Tableau d'objet withevents
    Par soazig dans le forum VB 6 et antérieur
    Réponses: 8
    Dernier message: 13/02/2004, 19h44
  5. [VB6] [Syntaxe] Fonction renvoyant un tableau d'objets
    Par Troopers dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 18/10/2002, 15h33

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