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 :

constructeur d'une classe


Sujet :

C++

  1. #1
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Août 2007
    Messages
    168
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2007
    Messages : 168
    Par défaut constructeur d'une classe
    salut

    j'ai une classe arbre déclarée comme suit :
    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
     
    #ifndef ARBRE_H
    #define ARBRE_H
     
    //classe de l'arbre
    class arbre{
     public:
      point pt;
     
     
      arbre();          // constructeur
      void Dessiner(point p,char kind);
    };
     
    #endif
    telque le constructeur est :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    //constructeur de la classe
    arbre::arbre()
    {
    texturage();
     
    }
    dans mon programme principale j'ai écrit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    arbre a;
    a.Dessiner(.....);
    l'arbre s'affiche mais sans texture ce qui signifie que la fonction "texturage" dans le constructeur ne s'execute pas !!!!

    marci d'avance de m'aider

  2. #2
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 395
    Par défaut
    Le problème, c'est qu'on n'a aucune idée de ce que contient la fonction texturage()...
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  3. #3
    Membre éprouvé Avatar de bobmidou
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    121
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Avril 2008
    Messages : 121
    Par défaut
    salut

    elle est ou ta fonction texturage() , enlève la du contructeur et mes la ailleurs puis réessaye.
    Bonne chance

  4. #4
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Août 2007
    Messages
    168
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2007
    Messages : 168
    Par défaut
    j'ai l'a met dans dessiner est elle fonctionne trés bien mais le probleme est que dessiner s'execute plusieurs fois car elle se trouve dans une boucle . cependant une seule execution de la fonction texturage suffit c'est pour ça je veux la mettre dans le constructeur de mon objet.

  5. #5
    Membre confirmé
    Avatar de mac&cheese
    Profil pro
    Étudiant
    Inscrit en
    Mars 2008
    Messages
    98
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2008
    Messages : 98
    Par défaut
    Bonsoir info_amel,
    Il y a quelque chose que je ne comprend pas tres bien, ta classe arbre n'herite d'aucune class et tu n'as pas declaré ta fonction texturage()... ton compilateur ne râle pas?

    Mac & Cheese

  6. #6
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Août 2007
    Messages
    168
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2007
    Messages : 168
    Par défaut
    texturage est dans une bibliothèque que j'ai inclus PAS de problème.
    j'ai dis que ça fanctionne bien quands je fait l'appel de texturage dans Dessiner mais ne fonctionne pas quand je le fais dans le constructeur !!!
    est ce que le constructeur ne s'excute pas !!! si c'est le cas comment je le lance ??? c'est ça mon problème !!!
    merci

  7. #7
    Membre confirmé
    Avatar de mac&cheese
    Profil pro
    Étudiant
    Inscrit en
    Mars 2008
    Messages
    98
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2008
    Messages : 98
    Par défaut
    texturage est dans une bibliothèque que j'ai inclus PAS de problème.
    Ceci n'etait pas dans ton code, donc je me demandais...
    Cependant si l'on pouvait voir ce que contiennes texturage() et dessiner(), histoire de voir si par hasard il ne te faut pas une valeur qu'y ne serait pas "valide" au moment de l'appel dans ton constructeur...

    D'autre part
    est ce que le constructeur ne s'excute pas !!! si c'est le cas comment je le lance ??? c'est ça mon problème !!!
    merci
    As tu essayé un petit cout dans ton constructeur, juste pour voir si ton code passe par là?

  8. #8
    Expert éminent
    Avatar de koala01
    Homme Profil pro
    aucun
    Inscrit en
    Octobre 2004
    Messages
    11 638
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Belgique

    Informations professionnelles :
    Activité : aucun

    Informations forums :
    Inscription : Octobre 2004
    Messages : 11 638
    Par défaut
    Salut,

    Il faudrait déjà que tu nous donne une idée précise de ce que fait la fonction texturage.

    Comme elle ne semble pas prendre d'arguments, on peut penser que:
    • Soit, elle renvoie une structure de type Texture (ou similaire)
    • Soit, elle travaille sur une structure statique de type Texture (ou similaire).

    Quoi qu'il en soit, ta classe arbre ne présente sans doute un intérêt que si elle contient cette texture, ou, du moins que si elle peut accéder facilement à cette donnée.

    Je me dis aussi qu'il serait, tant qu'à faire, sans doute intéressant de fournir directement le point au constructeur (et, pourquoi pas, également le char), étant donné que l'arbre ne devrait être responsable que du dessin... de ses propres éléments.
    A méditer: La solution la plus simple est toujours la moins compliquée
    Ce qui se conçoit bien s'énonce clairement, et les mots pour le dire vous viennent aisément. Nicolas Boileau
    Compiler Gcc sous windows avec MinGW
    Coder efficacement en C++ : dans les bacs le 17 février 2014
    mon tout nouveau blog

  9. #9
    Membre confirmé
    Avatar de mac&cheese
    Profil pro
    Étudiant
    Inscrit en
    Mars 2008
    Messages
    98
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2008
    Messages : 98
    Par défaut
    Etant donné que tu passes un point en parametre à ta methode dessiner(), je me disais que texturage utilise peut etre ces données et qu'elle ne sont pas utilisables lors d'un appel à texturage() dans ton constructeur car pas initialisée...
    Vois tu?

  10. #10
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Août 2007
    Messages
    168
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2007
    Messages : 168
    Par défaut
    MERCI POUR VOUS

    Citation Envoyé par koala01 Voir le message

    Quoi qu'il en soit, ta classe arbre ne présente sans doute un intérêt que si elle contient cette texture, ou, du moins que si elle peut accéder facilement à cette donnée.
    merci pour cette remarque c'est vrai j'ai déclaré la texture et j'ai fait l'appel de texturage (loader de texture) dans le constructeur . alors que le placage se fais dans dessiner . j'ai met maintenant la texture comme variable public dans la déclaration de la classe et ça fonctionne maintenant car dessiner peux acceder à la texture ...

    c'est résolus

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

Discussions similaires

  1. [POO] constructeur d'une class
    Par spirou dans le forum Langage
    Réponses: 13
    Dernier message: 05/07/2006, 16h11
  2. [Débutant] Constructeur d'une classe
    Par chennuo dans le forum Langage
    Réponses: 2
    Dernier message: 10/03/2006, 22h17
  3. Réponses: 2
    Dernier message: 04/12/2005, 21h10
  4. Réponses: 5
    Dernier message: 20/11/2005, 11h15
  5. Réponses: 3
    Dernier message: 06/11/2005, 18h02

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