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 :

Classes imbriquées : accès méthode objet fils


Sujet :

C++

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 42
    Par défaut Classes imbriquées : accès méthode objet fils
    Bonsoir,

    Je viens de commencer le CPP, la POO et j'ai un problème de compréhension.
    Pour comprendre, j'ai créé un exemple simple.

    J'ai créé une classe "Vehicule" et une classe "Roue".

    La classe Roue contient la pression des pneus. J'ai une méthode qui modifie la pression.
    Quand je créé dans le main un objet roue indépendant, tout fonctionne parfaitement.

    Un des attributs de la classe Vehicule est une Roue (de la classe Roue).
    La création se passe bien, j'arrive à faire afficher la pression de création de la roue de l'objet véhicule, la modification de la pression de la roue de l'objet véhicule semble fonctionner, mais l'affichage donne la valeur initiale, pas la valeur modifiée.

    Mon explication n'est pas très claire : ci joint les fichiers (C::Block).

    Cela fonctionne, à condition que je créé dans le fichier Vehicule, une méthode qui accède à la méthode de Roue :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    void Vehicule::changerPressionLiee(float variation) {
        m_roue.changePression(variation);
    }
    Cela ne me parait pas rationnel de devoir recréer toutes les méthodes de Roue dans Vehicule : je suppose qu'on peut y accéder directement.
    Peut être par le biais de pointeurs : j'ai essayé, en vain.

    Merci pour éclairage... Et je reste disponible pour toutes précisions complémentaires.

    vehicule.cpp
    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
    #include <string>
    #include "Vehicule.h"
     
    using namespace std;
     
    Vehicule::Vehicule() : m_marque("Peugeot"), m_roue() {
     }
    string Vehicule::get_marque() const {
        return m_marque;
    }
    Roue Vehicule::get_roue() {
        return m_roue;
    }
    void Vehicule::changerPressionLiee(float variation) {
        m_roue.changePression(variation);
    }
    Fichiers attachés Fichiers attachés

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

Discussions similaires

  1. Méthodes et classes imbriquées
    Par chagala dans le forum Débuter avec Java
    Réponses: 7
    Dernier message: 27/10/2009, 18h13
  2. Accès aux objets d'une classe créés dynamiquement
    Par mulfycrowh dans le forum Débuter
    Réponses: 5
    Dernier message: 17/10/2009, 23h03
  3. Réponses: 5
    Dernier message: 25/07/2007, 15h34
  4. Réponses: 5
    Dernier message: 01/02/2007, 13h14
  5. [c#] Méthode d'accès aux objets de ma form1
    Par SDuh dans le forum Windows Forms
    Réponses: 5
    Dernier message: 21/03/2006, 11h21

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