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 :

affichage ??? AIDER MOI !!!


Sujet :

C++

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Août 2004
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 3
    Points : 2
    Points
    2
    Par défaut affichage ??? AIDER MOI !!!
    Voici le programme qui me fais des misère, il est vraiment pas clair !
    surtout pour moi qui est trop l'habitude de faire du C++ ... lol
    enfin quand on dois developper on dev et c'est tout !

    -je vous laisse le lire:

    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
    23
    24
    25
    26
    27
    28
    #include <iostream.h>
    class A {
       protected:
          int x;
          void f(int);
       public:
          A(int a=1){x=a};
    };
     
    class B:public A{
          int y;
       public:
          B(int a)::A(2*a){y=a};
          void g();
    };
     
    void A::f(int i){
       x=i;
    }
     
    void B::g(){
       cout <<"x="<<x<<"y="<<y;
    }
     
    void main{
       B val(5);
       val.g();
    }
    Alors je vais vous dire ce que j'ai compris car peut être que je me trompe déjà sur les bases...

    -on a une classe A avec une methode A le constructeur qui affecte la valeur 1 à x.
    -ensuite on déclare un classe B héritant de la class A et de ce quelle contient
    -mais ce que je saisi pas c'est la déclaration du constructeur B qui en même temps que sa déclaration "B(int a)" on dois surment appeller le constructeur de A pour lui donner la valeur de "2*a" soit "2*1" à "y"
    -ensuite on déclare la méthode "f(int i)" qui affecte i à x
    -ensuite on déclare la fonction "g()" qui affiche x et y
    -et maintenant le programme principale qui me mais encore plus dans le doute que jamais ! avec "B val(5)" je ne voix pas d'où provient le "B val(5)" et "val.g()" car on ne réfère nul part au dessus à "val" .
    Enfin si je suis perdus c'est parceque je n'ai vraiment pas l'habitude et que nos cours sont trop espacé ... "vive l'apprentissage !"

    je remercie quiconque tente de maider sur cette question perturbante que j'ai en début de DM, je vous remercie
    c'est trés sympa

    [Balises [code] ajoutées par HW]

  2. #2
    Membre Expert

    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Juin 2003
    Messages
    4 506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 506
    Points : 5 724
    Points
    5 724
    Par défaut
    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
    23
    class A { 
    protected: 
    int x; 
    void f(int); 
    public: 
    A(int a=1){x=a}; 
    }; 
    class B:public A{ 
    int y; 
    public: 
    B(int a)::A(2*a){y=a}; 
    void g(); 
    }; 
    void A::f(int i){ 
    x=i; 
    } 
    void B::g(){ 
    cout <<"x="<<x<<"y="<<y; 
    } 
    void main{ 
    B val(5); 
    val.g(); 
    }
    Oui beh ce que tu dis n'est pas faux. Qu'est-ce qui te chagrine ? val ?
    val n'est ni plus ni moins qu'une instance de B. le parametre 5 est donc passé au constructeur de la class.
    " Dis ce que tu veux qui insulte mon honneur car mon silence sera la réponse au mesquin.
    Je ne manque pas de réponse mais : il ne convient pas aux lions de répondre aux chiens ! " [Ash-Shafi'i ]

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 98
    Points : 75
    Points
    75
    Par défaut
    Sinon, une petite précision, le constructeur de A n'affecte pas forcément la valeur de x à 1.
    1 est la valeur par défaut qui sera utilisée si tu appelle ton constructeur sans parametres.
    Ainsi tu as le droit de faire
    A monObjetA() bien que tu n'ais pas déclaré de constructeur par défaut.

    C'est tout simple en fait

    seb

  4. #4
    Membre Expert

    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Juin 2003
    Messages
    4 506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 506
    Points : 5 724
    Points
    5 724
    Par défaut
    Sinon, une petite précision, le constructeur de A n'affecte pas forcément la valeur de x à 1.
    1 est la valeur par défaut qui sera utilisée si tu appelle ton constructeur sans parametres.
    Ainsi tu as le droit de faire
    A monObjetA() bien que tu n'ais pas déclaré de constructeur par défaut.

    C'est tout simple en fait

    seb

    Si tu mets les () , le compilo risque de le prendre comme une fonction ( deja eu un probleme comme ça)

    Donc si tu n'a pa d'arguments a lui donner ne pas mettre les ()

    Et en effet , 1 est la valeur par defaut.
    " Dis ce que tu veux qui insulte mon honneur car mon silence sera la réponse au mesquin.
    Je ne manque pas de réponse mais : il ne convient pas aux lions de répondre aux chiens ! " [Ash-Shafi'i ]

  5. #5
    Candidat au Club
    Profil pro
    Inscrit en
    Août 2004
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 3
    Points : 2
    Points
    2
    Par défaut En fait je souhaite savoir ce que affiche ce programme !!!!!
    oui en effet j'ai mal exprimer mon désir de savoir ce que afficher ce programme car en faite je penser réussir a comprendre avec vos explication mais malheureusement je ne suis pas encore sure de moi :-(

    mais je suis quand meme parvenus a un resultat vu que val est une instance de la class B .
    le programme devrai afficher x=10 et y=5 ????

    MERCI D'AVANCE :-) !

  6. #6
    Membre Expert

    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Juin 2003
    Messages
    4 506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 506
    Points : 5 724
    Points
    5 724
    Par défaut
    mais je suis quand meme parvenus a un resultat vu que val est une instance de la class B .
    le programme devrai afficher x=10 et y=5 ????

    MERCI D'AVANCE !
    Oui il devrait afficher 10 et 5 ce n'est pas le cas ?
    " Dis ce que tu veux qui insulte mon honneur car mon silence sera la réponse au mesquin.
    Je ne manque pas de réponse mais : il ne convient pas aux lions de répondre aux chiens ! " [Ash-Shafi'i ]

  7. #7
    Candidat au Club
    Profil pro
    Inscrit en
    Août 2004
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 3
    Points : 2
    Points
    2
    Par défaut OUI
    OUI en effet c'est résultat merci hegros

    PS: je peu pas tester le prog car je suis pas chez moi :-)
    @ bientôt

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

Discussions similaires

  1. Aider moi pour sql server et delphi
    Par aqs dans le forum Bases de données
    Réponses: 6
    Dernier message: 11/06/2005, 21h16
  2. [Kylix] aider moi KYLIX
    Par nabs dans le forum EDI
    Réponses: 2
    Dernier message: 12/05/2004, 08h57
  3. [Kylix] aider moi sous kylix merci
    Par nabs dans le forum EDI
    Réponses: 2
    Dernier message: 07/05/2004, 18h03
  4. Réponses: 2
    Dernier message: 26/03/2004, 09h15
  5. [Kylix] aider moi sur kylix
    Par nabs dans le forum EDI
    Réponses: 1
    Dernier message: 19/03/2004, 14h19

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