Bonjour,
J'ai quelques bases (qui datent de mes études) en Java et je me lance dans le C++.
De mémoire, il est possible de faire ceci en Java :
et je cherche donc à faire la même chose en C++ (si c'est possible).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 ClasseDeBase toto = ClasseDerivee(); ou ClasseDerivee toto = ClasseDeBase();
J'ai une fonction qui analyse une string qui contient une trame GPS et renvoie un objet contenant les informations adéquates.
Le problème, c'est qu'il existe différents types de trame et que le fonction doit renvoyer le bon objet en fonction du type de trame.
Cela ressemblerais à ça :
Comment obtenir ce genre de comportement ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 GPSSentence GPSSentenceAnalyser::analyse(string gpsSentence) const{ string gpsSentenceType = gpsSentence.substr(1, 5); if (gpsSentenceType=="GPGAA"){ GPSSentence result = GPGAA(); result.getNbField(); } if (gpsSentenceType=="GPGSA"){ GPSSentence result = GPGSA(); result.getNbField(); } if (gpsSentenceType=="GPGSV"){ GPSSentence result = GPGSV(); result.getNbField(); } if (gpsSentenceType=="GPGLL"){ GPSSentence result = GPGLL(); result.getNbField(); } return result; }
Cela est-il bien du polymorphisme ?
Merci d'avance pour vos réponses.
Partager