art_dupond je suis neuneu... oui oui !! | argh, j'y arrive pas.
en fait, j'arrive à mettre les éléments de types B dans mon vecteur ; mais le problème, c'est que quand je veux afficher ces éléments, ils sont devenus des éléments de type A Bong, je vous mets le code au cas où...
Code :
- #include <vcl.h>
- #include <iostream.h>
- #include <fstream.h>
- #include <iomanip.h>
- #include <stdlib.h>
- #include <string.h>
- #include <math.h>
- #define MAX 500
- class tevenement
- {
- short flag;
- string name;
- float time;
- public:
- tevenement() { flag=0; name=""; time=0;}
- tevenement(short drapeau, string nom, float temps) { flag=drapeau; name=nom; time=temps;}
- virtual void affiche() { cout << flag << " " << name << " " << time << " ";}
- ~tevenement() {}
- tevenement & operator=(const tevenement &);
- };
- tevenement & tevenement::operator=(const tevenement & kablouille) //------ =
- {
- flag = kablouille.flag;
- name = kablouille.name;
- time = kablouille.time;
- return *this;
- }
- class tdroit : public tevenement
- {
- string fichier;
- public:
- tdroit() { fichier="";}
- tdroit(short, string, float, string);
- void affiche()
- {
- cout << "tdroit\n";
- tevenement::affiche();
- cout << fichier << endl;
- }
- ~tdroit() {}
- };
- class tpermission : public tevenement
- {
- float number;
- public:
- tpermission() { number=0;}
- tpermission(short, string, float, float);
- void affiche()
- {
- cout << "tpermission\n";
- tevenement::affiche();
- cout << number << endl;
- }
- ~tpermission() {}
- };
- tdroit::tdroit(short court, string corde, float bateau, string fil) : tevenement(court, corde, bateau)
- {
- fichier = fil;
- }
- tpermission::tpermission(short court, string corde, float bateau, float barque) : tevenement(court, corde, bateau)
- {
- number = barque;
- }
- /**********************************************************************/
- // fin déclaration des classes
- /**********************************************************************/
- void main()
- {
- tevenement * vecteur = new tevenement[MAX];
- tevenement crotte;
- tdroit a(1,"neuneu",125.36,"brol.dat" );
- tpermission b(0,"yaya",258.36,52);
- // a.affiche();
- /*
- vecteur[1] = *(&a);
- vecteur[1].affiche();
- */
- vecteur[1] = *(tdroit*) (&a);
- vecteur[1].affiche();
- int attend;
- cin >> attend;
- }
|
---------------
oui oui
|