Accueil > Forum > > > > Tite question sur le polymorphisme
Tite question sur le polymorphisme
vendredi 18 mars 2005 à 12:41:49 |
Tite question sur le polymorphisme

tibob51
|
Bonjour ma questio est simple: J'ai des classe B,C,D ect... qui dérive de A. Elle contienne toute une fonction F() sauf A. Je créé mes classe en utilisan un pointeur sur A(Pa=new B()ect....) Je voudrais savoir si il est possible d'appeller F() sans qu'elle soit définie dans la classe A. Dite moi le si c'est pas clair,sinon merci de votre aide.
|
|
vendredi 18 mars 2005 à 13:00:07 |
Re : Tite question sur le polymorphisme

neodelphi
|
Je pense pas que ce soit possible a moins de caster ton objet... Mais
si ta méthode est dans D B et C pkoi ne pas l'implementer dans A ?
neodelphi
|
|
vendredi 18 mars 2005 à 13:04:22 |
Re : Tite question sur le polymorphisme

tibob51
|
C'est une fonction de calcul qui différe complétement d'une classe a l'autre (c'est des formule d'elec de firgo de chauffage donc rien a voir) ma classe A ne me sert ka me créer un lien et a parametrer les index le nombre d'elem ect....
|
|
vendredi 18 mars 2005 à 14:31:09 |
Re : Tite question sur le polymorphisme

ymca2003
|
met donc F en tant que fonction virtuelle pur dans ce cas (si c'est les même paramètres pour toutes sinon ça risque d'être plus difficile). C'est l'intérêt de faire des classes dérivées.
|
|
vendredi 18 mars 2005 à 14:37:30 |
Re : Tite question sur le polymorphisme

tibob51
|
C justement le problème que j'etait en train de voir. Ya pa le meme nombre de param. Alors je cherche encore,mais merçi
|
|
vendredi 18 mars 2005 à 14:40:51 |
Re : Tite question sur le polymorphisme

tibob51
|
Je sais qu'on peut envoyé des arguments indéfini a une fonction en definissant ma fonction comme ceci F(...),mais il faut que je vois comment on récupére les arguments,et peu etre que ça sera ma solution.
|
|
samedi 19 mars 2005 à 00:49:16 |
Re : Tite question sur le polymorphisme

NitRic
|
Il faut connaître le type des données envoyées
type func(...); << pas bon ca type func( type arg1, ... ); << ca c'est bon
tu pourais te faire un genre de `pseudo-printf`
#include <cstdarg> // en C >> <stdarg.h>
type func( const char * format, ... ) {
char * chaine; int entier; double flottant; va_list argv;
va_start(argv, format);
while ( '\0' != *format ) { switch ( *format ) { case 's': chaine = va_arg(argv, char*); // tu jous avec `chaine` break; case 'i': entier = va_arg(argv, int); // ... break; // etc ... } ++format; }
va_end(argv); return value;
}
int main() {
int i = 25; char chaine[] = "bonjour";
type retval = func( "si", chaine, i );
return 0;
}
Ca c'est pour le dernier commentaire, pour le reste je sais pas ...
~(.:: NitRic ::.)~
|
|
samedi 19 mars 2005 à 10:27:55 |
Re : Tite question sur le polymorphisme

vecchio56
|
Je pense que ce que tu veux faire n'a aucun sens: si les fonctions F
ont des paramètres différents, il sera impossible de savoir à la
compilation si ce que tu écris à un sens puisqu'on ne connaîtra pas le
type du pointeur A*:
tu pourrais écrire
A* a;
...
a->F(1);
a->F(1, 2);
Il faut revoir tes classes, si les fonctions F n'ont rien a voir ca ne sert à rien de les appeler pareil
|
|
dimanche 20 mars 2005 à 10:32:20 |
Re : Tite question sur le polymorphisme

tibob51
|
NitRic>>> Merçi de ton aide. vecchio56>>> Je t'explique le principe.Ma classe A (qui s'appelle réèlement Parametres) contient les info sur le nombre d'élément,les diffèrentes unitées,leur noms.... pour chacun d'entre eux. Les autre classes contienent leur unitées et une fonction F (Calcul). Mon appli etant une appli win32 je me sert de son constructeur pour créer la classe voulu(le choix de la formule etant fait just avant) et paramétrer mon tableau mes comboBox ect... Une foi que l'utilisateur valide les données je n'ai plus qu'a appeler ma fonction calcul de cette façon: result=Pcla->Calcul(indexrecherche,valeu1,valeur2.....)//ou Calcul(indexrecherche,Valeur[]) //ça devrait etre plu pratique.
Sinon je devrai recontroler quelle est la classe en cours d'utilisation ce qui donnerai:
switch (Form1->formulechoisie){ case 1: result=ElecPuissanceAbs->Calcul(indexrecherche,........) break; case 2: result=ElecPuissanceApp->Calcul(indexrecherche,.....) . . . Ce qui fait beaucoup plus long,voilà j'espère que tu a saisi maintenant le but. A++;
|
|
Cette discussion est classée dans : question, classe, ect, tite, polymorphisme
Répondre à ce message
Sujets en rapport avec ce message
un tableau dans une classe [ par JediMaster ]
salut tt le monde j'avais deja poser cet question mais je crois que celui qui ma repondu a pas compris la question donc je veux faire une classe avec
la p'tite question pas méchante... [ par cedcrow ]
bonjour à tous,je souhaiterais réaliser une appli windows qui n'aurait pas un format de fenetre standard, du style les applications multimédia de lect
question de "cours" : constructeurs de classe dérivée et classe de base [ par mhassine ]
Bonjour,j'ai une classe personne et une classe etudiant dérivée de personne.J'ai le constructeur Personne(string n)J'ai aussi le constructeur etudiant
question de débutant [ par catamenia ]
bonjour,J'ai récupérer un fichier .cpp et .h contenant une classe.j'ai ajouter les fichiers au projet.Quand je déclare une instance de la classe, j'ai
Pb de polymorphisme [ par obby ]
Salut à tous, j'ai un problème, en fait je fais du polymorphisme mais la classe "mère" n'est pas la classe de plus haut niveau et du coup je n'arri
Petite question avec CAsyncSocket [ par Nixeus ]
Bonjour tout le monde !Quelques petites questions me perturbe depuis 2 jours, et je m'en remet donc à vous !Voila, je programme un petit serveur en MF
RegisterClassEx [ par Ziman ]
Bonjour,je me pose une tite question. En fait, je vois dans tout les code pour l'API win32 la fonction RegisterClassEx, j'ai vu qu'elle servait à cré
Opérateur de copie et pointeur [ par eupeup ]
Bonjour à tous!!!! J'ai une petite question, et si quelqu'un pouvait m'aider, ce serait sympa... Donc ca concerne la définition d'un opérateur de cop
Question conception [ par wismerhill__ ]
Salut, je bosse sur un projet et je suis à la conception des classesJe ne suis pas sur que c'est bien le coin pour en parler donc si vous pensez que j
Question pour un debutant [ par wismerhill__ ]
Bonjour à tous, j'ai une question mega basique : j'ai une classe date dont l'attribut private mDate est le nombre de jour depuis 1/1/1900Le code suiva
Livres en rapport
|
Derniers Blogs
POUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDNPOUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDN par neodante
Quelle est le point commun entre : Microsoft il y a 10 ans et Apple aujourd'hui ? Réponse: avoir une politique de protocoles propriétaires et fermés :) Car pour rappel (si si je vous assure c'est important de le rappeler), la majorité des spécifications e...
Cliquez pour lire la suite de l'article par neodante JOYEUX ANNIVERSAIRE NIXJOYEUX ANNIVERSAIRE NIX par ebartsoft
Souhaitons un bon et joyeux anniversaire à notre hôte à tous, Nix.
Je ne le répéterais jamais assez mais sans lui rien ne serait possible. Il défit en permanence les lois de la gravité et comme il le dit si bien, si tu lui fais confiance ça devra...
Cliquez pour lire la suite de l'article par ebartsoft IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc
Forum
MATLAB PROGRAMME MATLAB PROGRAMME par wahab1087
Cliquez pour lire la suite par wahab1087 RGB2GRAYRGB2GRAY par musa18
Cliquez pour lire la suite par musa18
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|