bonjour tout le monde
j'ai un probleme trés urgent sachant que je programme en c++ sous linux j'ai le probleme suivant.j'ai toujours un probleme d'execution si j'utilise une classe virtuelle pure
j'ai déclaré une classe simple :forme qui est une classe virtuelle pure
#ifndef _FORME _HH
#define _FORME _HH
class forme
{public:
forme(){};
virtual ~ forme()
virtual void afficher()
};
#endif
ce code est enregistré dans le fichier forme.h
j'ai déclaré ensuite
une classe point qui derive de la classe forme
#ifndef _POINT _HH
#define _POINT_HH
#include forme.h
class point : public forme
{
public:
point(int a,int b)
~point()
void afficher()
private:
int x;
int y;
};
#endif
ce code est enregistré dans le fichier point.h
ensuite dans le fichier point.cpp j'ai implementé les fonctions qui se trouvent dans le fichier point.h
#include <iostream.h>
#include <cstdio.h>
#include "forme.h"
#include "point.h"
point::point(int a,int b)
{x=a;
y=b;
}
void point:: afficher()
{cout << x;
cout << y;
}
comme je vous ai déjà dit je n'ai d'erreur de compilation mais le probleme se pose au moment de l'execution en signalant : undefined reference point virtual table.
j'attend votre aide
# Virtuelle et virtuelles pures.
Posté par Obsidian . Évalué à 3.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.