Class en c++

PP68240 Messages postés 2 Statut Membre -  
 Topic -
Bonjour
Si j'utilise la création d'une intance de class et un membre de cette même class dans une même fonction , aucun pb à la compilation.
Si j'utilise la création d'une instance et un membre dans deux foncions distinctes, le compilateur m'indique une erreur dans la deuxième fonction: :: === test10, Release ===
C:\test10\test10Main.cpp:83: error: `instanceA' undeclared (first use this function)
Pourquoi ?

merci de votre aide

3 réponses

  1. kilian Messages postés 8675 Date d'inscription   Statut Modérateur Dernière intervention   1 526
     
    Salut,

    Le mieux serait que tu nous montre le code.
    0
  2. PP68240 Messages postés 2 Statut Membre
     
    Voici le code

    // classA.h
    #ifndef CLASSA_H_INCLUDED
    #define CLASSA_H_INCLUDED
    class A
    {
    private:
    int a;

    public:
    void testA(int x);
    };

    #endif // CLASSA_H_INCLUDED

    // classA.cpp
    #include "classA.h"

    void A::testA(int x)
    {
    a = x;
    };

    *********
    * Name: test10Main.cpp

    void test10Dialog::OnClic1( wxCommandEvent& event)
    {

    A instanceA;

    }
    void test10Dialog::OnClic2( wxCommandEvent& event)
    {
    int xx;
    instanceA.testA(xx);
    }
    0
  3. Topic
     
    Bonjour,

    instanceA que tu créés dans ta fonction OnClic1 n'a qu'une portée limitée a cette fonction.
    Dès que tu sors de ta fonction instanceA est détruit.

    Dans OnClic2 instanceA n'existe pas.
    0