Bonjour à tous!
J'ai un petit souci pour un exercice du Stroustrup :
Il faut reprendre une structure simple que je vous donne après et en faire une classe pour que chaque membre de l'union soit toujours utilisé correctement en fonction de son type.
Voici la structure donnée :
Je pensais donc en faire une classe et jouer avec les spécificateurs d'accès public et private.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 enum Type {S, I}; struct Entry{ char* name; Type t; union { char* s; // utilise s si t==S int i; // utilise i si t==I } };
Et notamment fournir 2 membres d'accès private de type
et fournir un membre public get() qui soit capable en fonction du type t de l'enum d'appeler le membre privé qui convient.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 private: char* getS(); int getI();
Malheureusement, je ne peux pas fournir un type de retour correct à ce membre public et je n'ai aucune idée de comment parvenir à faire l'exercice.
Un petit coup de main serait loin d'être de trop.
Merci
P.S. : je précise que cet exercice intervient dans le libre avec le chapitre sur les modèles et que cela présuppose donc qu'il ne faut pas les utiliser.
Partager