[c++]classes mere/fille

Bonjour,
voila mon petit soucis :

j'ai ma classe mere :
class cMere
{
public :
void Methode();
};

et ma classe fille :
class cFille:public cMere
{
public :
void AutreMethode();
};

dans mon main si je fais :

cFille * pFille;
pFille->Method();

voila, la ca me dis que Method() ne fait pas partis de cFille et pourtant c'est la classe mere ... je comprends pas x)

si vous savez, pourriez-vous m'aider?

merci d'avance !

5 réponses

  1. mon compilateur est gcc, mais sinon j'ai fais autrement, merci =)

    j'ai un autre soucis mais je devrais m'en sortir ^^
    1
    1. Contributeur
      Tu as mis un "e" dans la classe mère...
      0
      1. oui fin c'était un exemple, j'ai pas fais juste ca =) (en gros, c'est pas l'orthographe qui est en cause pour moi ;) )
        0
    2. Contributeur
      prouve le contraire, fait un copier coller.
      Montre nous un code de base où ça ne fonctionne pas. Et la sortie erreur exacte du compilateur.
      0
      1. classe mere
        class cVoiture : public cModel
        {
        	private :
        		int * NumSerie;
        		int NbrVoit;
        	public :
        		cVoiture(int maxVoit);
        		cVoiture( cVoiture& tVoiture );
        		~cVoiture();
        		int * retNumSerie(){return NumSerie;}
        		int retNbVoit(){return NbrVoit;}
        		int AjouterVoiture( string tNom , int tVitMax , int tPrix , int tNumSerie );
        		int* Recherche( string tNom , int tVitMax , int tPrixHT , int * nbr );
        		string RechercheAll( string tNom , int tVitMax , int tPrixHT );
        		string Voiture( int id );
        		string retourAll();
        };


        classe fille
        class cNeuf: public cVoiture
        {
        	private :
        		int ** mill;
        		int NbrNeuf, Max;
        	public :
        		cNeuf(int max);
        		cNeuf( cNeuf& tNeuf);
        		~cNeuf();
        		int retNbNeuf(){return NbrNeuf;}
        		int ** retMill(){return mill;}
        		string RechercherNeuf( int tMill , string tNom , int tVit , int tHT );
        		string TouteNeuves(){return retourAll(); }
        		void AjouterNeuf( int tMill , string tNom , int tVit , int tHT , int tNumSerie );
        
        };

        et le main
        int main()
        {
            cNeuf * pNeuf;
            pNeuf = new cNeuf(50);
            cout << pNeuf->retourAll() << endl; //erreur ici (retourAll ne fait pas partis de pNeuf)
            return 0;
        }
        
        0
        1. Contributeur
          sans conviction, essai ça :
          cout <<( pNeuf->retourAll() )<< endl;

          Moi j'ai ça comme retour d'erreur, ce qui n'a rien à voir :
          undefined reference to `cNeuf::cNeuf(int)'
          undefined reference to `cVoiture::retourAll()'

          Quel est ton compilateur ?
          0