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 :

Probleme avec constructeur surchargé


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 8
    Par défaut Probleme avec constructeur surchargé
    Bonjour je programme un simulateur de course auto en c++ et j'ai un gro prob avec mes classes.
    en fait j'ai 2 classes :

    //classe voiture :
    #ifndef VOITURE_H
    #define VOITURE_H

    #include "Obstacle.h"
    /*
    * No description
    */
    class Voiture
    {
    public:

    ...

    // class constructor
    Voiture();
    // class destructor
    ~Voiture();

    private:

    Obstacle m_obstacleEnCours;
    Obstacle m_Ligne_droite(1 , "Ligne droite" , 0);

    };

    #endif // VOITURE_H


    Une classe Obstacles :

    #ifndef OBSTACLE_H
    #define OBSTACLE_H

    /*
    * No description
    */
    class Obstacle
    {
    public:


    // surcharge constructeur
    Obstacle(int iden ,std::string nom , int effet);
    // class constructor
    Obstacle();
    // class destructor
    ~Obstacle();

    private:

    //Attributs
    std::string m_nom_obstacle;
    int m_identifiant;
    int m_effet;

    };

    #endif // OBSTACLE_H

    Dans obstacle.cpp j'ai :
    #include <string>
    #include "Obstacle.h" // class's header file

    using namespace std;



    // class constructor
    Obstacle::Obstacle() : m_identifiant(0) , m_effet(0) , m_nom_obstacle("obstacle_par_defaut")
    {

    }

    // surcharge constructeur
    Obstacle::Obstacle(int iden ,string nom , int effet) : m_identifiant(iden) , m_nom_obstacle(nom) , m_effet(effet)
    {
    }
    // class destructor
    Obstacle::~Obstacle()
    {
    }

    Mon probleme est que lorsque je défini ma variable m_obstacleEnCours avec le constructeur simple mon prog l'accepte et compil mais lorsque ke je défini Obstacle m_Ligne_droite(1 , "Ligne droite" , 0) il ne compil pas. Mais je ne vois pas d'erreur.

    Pourriez vous m'aider svp? merci d'avance.

  2. #2
    Membre Expert

    Profil pro
    Inscrit en
    Juin 2006
    Messages
    1 294
    Détails du profil
    Informations personnelles :
    Localisation : Royaume-Uni

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 294
    Par défaut
    Salut,

    Citation Envoyé par dr971
    Mais je ne vois pas d'erreur.

    Pourriez vous m'aider svp? merci d'avance.
    C'est simple : ce n'est du tout du C++ valide.
    Il faut faire quelque chose comme :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    class Voiture
    {
    public:
       Voiture();
      ~Voiture();
    private:
      Obstacle m_Ligne_droite;
    };
    Apparemment tu as un .cpp correspondant au .h avec l'implémentation, dans ce cas tu dois aussi faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Voiture::Voiture()
    : m_Ligne_droite(1 , "Ligne droite" , 0)
    {}
    Utilise les balises 'code' au fait, c'est plus lisible

    MAT.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 8
    Par défaut super
    merci pour ton aide ca à l'air de fonctionner bien. Si g d'autres prob t'inkiet tu le sauras lol

  4. #4
    Rédacteur
    Avatar de Laurent Gomila
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    10 651
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 10 651
    Par défaut
    N'oublie pas de cliquer sur si c'est bon, et accessoirement utilise les balises [ code ] pour rendre ton code source plus lisible.

Discussions similaires

  1. Probleme avec la surcharge de l'operateur <<
    Par zebullax dans le forum Débuter
    Réponses: 3
    Dernier message: 28/12/2010, 09h02
  2. probleme avec fonction surchargée
    Par le_voisin dans le forum SL & STL
    Réponses: 2
    Dernier message: 13/01/2009, 01h59
  3. Probleme avec constructeur.
    Par watiero dans le forum C++
    Réponses: 18
    Dernier message: 15/02/2008, 16h16
  4. Probleme avec constructeur
    Par watiero dans le forum C++
    Réponses: 8
    Dernier message: 12/02/2008, 21h16
  5. Réponses: 13
    Dernier message: 02/02/2005, 00h21

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