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 :

T.nt n'es pas défini


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Profil pro
    Inscrit en
    Juin 2013
    Messages
    294
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 294
    Par défaut T.nt n'es pas défini
    Bonjour,

    Je ne comprends pas pourquoi le code suivant

    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
     
    #include <iostream>
    #include <cmath>
     
    using namespace std;
     
    class Triangles {
    	public:
    	int nt;
    };
     
    int Draw(void) {
    	return T.nt;
    }
     
    int main() {
    	Triangles T;
            T.nt=1;
    	cout << Draw() << endl;
    }
    donne l'erreur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    test.cpp: In function ‘int Draw()’:
    test.cpp:7:9: erreur: ‘T’ was not declared in this scope
    Merci d'avance.

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Ta variable T n'est définie qu'à l'intérieur de ta fonction main, elle n'a aucune existence ailleurs.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    int main() {
    	Triangles T; // définie à partir d'ici
            T.nt=1;
    	cout << Draw() << endl;
    }  // détruite ici
    Tu peux modifier ta fonction Draw() afin qu'elle prenne un Triangle en paramètre.

  3. #3
    Membre très actif
    Profil pro
    Inscrit en
    Juin 2013
    Messages
    294
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 294
    Par défaut
    Merci mais mon programme (le non simplifié) ne m'autorise pas à donner un argument à la fonction Draw.

  4. #4
    Invité
    Invité(e)
    Par défaut
    C'est à dire ? Pourrais-tu donner plus de précisions ?

  5. #5
    Membre très actif
    Profil pro
    Inscrit en
    Juin 2013
    Messages
    294
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 294
    Par défaut
    J'utilise Opengl.

    Et 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
    ...
    void Draw() {
     
      glMatrixMode(GL_MODELVIEW);
      glLoadIdentity();
     
      glColor3f(0., 0., 1.);
     
      for (int i=0; i<g.nt; ++i)
    	 g.DrawTriangle(i);
     
    }
    ...
     
    int main()
    {
    Triangles g;
    g.nt=10;
    glutDisplayFunc( Display );  // pour l'affichage
    }
    Je pense je vais définitir une variable globale juste pour ce g.nt sion ne trouve pas de meilleur solution.

    Merci.

  6. #6
    Rédacteur/Modérateur


    Homme Profil pro
    Network game programmer
    Inscrit en
    Juin 2010
    Messages
    7 150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Canada

    Informations professionnelles :
    Activité : Network game programmer

    Informations forums :
    Inscription : Juin 2010
    Messages : 7 150
    Billets dans le blog
    4
    Par défaut
    ha l'ignominie de Glut
    tu n'auras pas le choix que d'utiliser des globales pour ça
    mais Glut ne devrait plus vraiment être utilisé dans le cadre d'une application C++ amha, c'est un peu obsolète comme approche

    tu peux utiliser directement openGL, si c'est pour faire du fenêtrage applicatif, pourquoi pas Qt ou équivalent ?
    Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
    Un peu de programmation réseau ?
    Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 05/06/2007, 17h22
  2. Réponses: 8
    Dernier message: 04/06/2007, 16h20
  3. Réponses: 24
    Dernier message: 01/06/2007, 09h26
  4. Réponses: 8
    Dernier message: 11/07/2006, 17h27
  5. [MySQL] Echange de valeurs dont le nombre n'est pas défini
    Par Diafwl dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 31/01/2006, 10h47

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