#1 Le 28/03/2007, à 17:32
- sin city
[C++]Héritage, diagramme UML, entier décimal
Bonjour,
j'ai quelques questions :
Point qui est une classe dérivée de la classe Couleur
Est-ce que cette phrase signifie que Point hérite de Couleur ?
Sinon qu'est-ce que ça signifie ?
Dans un diagramme UML, pour indiquer que la classe Point hérite de la classe Couleur, est-ce qu'il faut faire une flèche allant de Point vers Couleur ou bien la flèche doit aller de Couleur vers Point ?
Enfin, quelle est la fonction a utilisé en C++ pour vérifier que ce qui est tapé est bien un entier décimal ?
Par exemple, si *jfjfj, gfggf, -122@, 11.5, etc sont entrés, il doit y avoir un message d'erreur et si 11 est tapé, c'est correct.
Merci
#2 Le 28/03/2007, à 21:20
- Moka_one
Re : [C++]Héritage, diagramme UML, entier décimal
salut
alors, si point est dérivé de la couleur alors cela veux dire que point hérite de couleur.
Ainsi dans ton diagramme UML tu auras une flèche qui part de point et qui va vers couleur.
Pour ce qui est de la verification de l'entrée decimale:
Lorsque tu lit (cin ou scanf resp. C++ ou C) quelque chose tu te doit d'avoir declarer la variable dans laquelle tu vas lire. Ainsi en declarant int valeur_lue seul des int pourront "rentré" dans ta valeur.
En revanche si tu entre autre chose tu auras une erreur.
Ainsi je te suggère vivement soit de faire un cout avant le cin pour dire qu'il faut rentrer un entier, soit de te renseigner sur les EXECPTIONS qui permettent de reagir de la façon voulue lorsqu'une erreur se produit.
voila bonne recherche et n'hésite pas a poster si tu as des soucis sur les exceptions
La défaite est éphémère
Seule la victoire est éternelle
Hors ligne
#3 Le 28/03/2007, à 23:29
- sin city
Re : [C++]Héritage, diagramme UML, entier décimal
salut
alors, si point est dérivé de la couleur alors cela veux dire que point hérite de couleur.
Ainsi dans ton diagramme UML tu auras une flèche qui part de point et qui va vers couleur.Pour ce qui est de la verification de l'entrée decimale:
Lorsque tu lit (cin ou scanf resp. C++ ou C) quelque chose tu te doit d'avoir declarer la variable dans laquelle tu vas lire. Ainsi en declarant int valeur_lue seul des int pourront "rentré" dans ta valeur.
En revanche si tu entre autre chose tu auras une erreur.
Ainsi je te suggère vivement soit de faire un cout avant le cin pour dire qu'il faut rentrer un entier, soit de te renseigner sur les EXECPTIONS qui permettent de reagir de la façon voulue lorsqu'une erreur se produit.
voila bonne recherche et n'hésite pas a poster si tu as des soucis sur les exceptions
Salut, merci pour les réponses mais je ne devrais en principe pas avoir besoin de lever une exception pour mon soucis.
J'ai écrit un main dont voici un bout de code :
int main(){
int choix;
do{
cout << "\n----------Menu----------" << endl;
cout << "choix 1" << endl;
/...
cout << "0 : quitter" << endl;
do{
cout << "Donner votre choix : ";
cin >> choix;
}while(isdigit(choix) == 0);
switch(choix){
case 1:
// ...
break;
// ...
default:
//...
}while(choix!=0);
return 0;
}
A l'execution de mon programme, j'entre mon choix : *jjj et après j'obtiens l'affichage indéfiniement de "Donner votre choix".
Comment faire pour qu''il me redemande d'entre un choix sans que ce soit infini?
#4 Le 29/03/2007, à 15:35
- Luc Hermitte
Re : [C++]Héritage, diagramme UML, entier décimal
Premières questions, quelque que soit la "direction" de l'héritage employé, ici il l'est à très mauvais escient. Au mieux un point (coloré) disposera d'une couleur.
Dernière question. Ce point est traité dans le FAQ C++ de developpez.
#5 Le 05/11/2008, à 12:12
- imedo
Re : [C++]Héritage, diagramme UML, entier décimal
salut;,
mon pb et comme hérité d'une classe mére.h
ici je Produit_paharmaceutique.cpp et Produit_paharmaceutique.h
le pb est
/tmp/cceu3HwR.o: In function `main':
main.cpp:(.text+0x3d3): undefined reference to `Produit_pharmaceutique::Produit_pharmaceutique()'
main.cpp:(.text+0x3de): undefined reference to `Produit_pharmaceutique::ajouter()'
main.cpp:(.text+0x3e9): undefined reference to `Produit_pharmaceutique::~Produit_pharmaceutique()'
main.cpp:(.text+0x44c): undefined reference to `Produit_pharmaceutique::~Produit_pharmaceutique()'
main.cpp:(.text+0x5b5): undefined reference to `Produit_pharmaceutique::Produit_pharmaceutique()'
main.cpp:(.text+0x5c0): undefined reference to `Produit_pharmaceutique::afficher()'
main.cpp:(.text+0x5cb): undefined reference to `Produit_pharmaceutique::~Produit_pharmaceutique()'
main.cpp:(.text+0x62e): undefined reference to `Produit_pharmaceutique::~Produit_pharmaceutique()'
collect2: ld a retourné 1 code d'état d'exécution
Hors ligne