Peut-on mettre plusieurs valeurs dans un énuméré en C++ ?
Utilisateur anonyme
-
Dalfab Messages postés 706 Date d'inscription Statut Membre Dernière intervention -
Dalfab Messages postés 706 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Voici mon code :
--------- Direction.h------------------
#ifndef DIRECTION_H
#define DIRECTION_H
class Direction{
public:
enum sens {
UP=(-1,0),
DOWN=(1,0),
LEFT=(0,-1),
RIGHT=(0,1),
UP_RIGHT=(-1,1),
UP_LEFT=(-1,-1),
DOWN_RIGHT=(1,1),
DOWN_LEFT=(1,-1)
};
private:
int x, y;
public:
Direction(int x, int y) {
this->x = x;
this->y = y;
}
int getX(){
return x;
}
int getY(){
return y;
}
};
#endif // DIRECTION_H
------- Direction.h ------------
------- Main.cpp ------------
#include <iostream>
#include "Direction.h"
using namespace std;
int main()
{
cout << "Hello World!" << endl;
Direction::sens c = Direction::UP_LEFT;
cout << c << endl;
return 0;
}
----- Main.cpp --------
Lorsque je lance le programme il me retourne -1 alors que normalement il devrait m'envoyer -1, -1
J'aimerais savoir comment faire pour mettre deux valeurs dans un énuméré.
Merci d'avance !
Voici mon code :
--------- Direction.h------------------
#ifndef DIRECTION_H
#define DIRECTION_H
class Direction{
public:
enum sens {
UP=(-1,0),
DOWN=(1,0),
LEFT=(0,-1),
RIGHT=(0,1),
UP_RIGHT=(-1,1),
UP_LEFT=(-1,-1),
DOWN_RIGHT=(1,1),
DOWN_LEFT=(1,-1)
};
private:
int x, y;
public:
Direction(int x, int y) {
this->x = x;
this->y = y;
}
int getX(){
return x;
}
int getY(){
return y;
}
};
#endif // DIRECTION_H
------- Direction.h ------------
------- Main.cpp ------------
#include <iostream>
#include "Direction.h"
using namespace std;
int main()
{
cout << "Hello World!" << endl;
Direction::sens c = Direction::UP_LEFT;
cout << c << endl;
return 0;
}
----- Main.cpp --------
Lorsque je lance le programme il me retourne -1 alors que normalement il devrait m'envoyer -1, -1
J'aimerais savoir comment faire pour mettre deux valeurs dans un énuméré.
Merci d'avance !
A voir également:
- Peut-on mettre plusieurs valeurs dans un énuméré en C++ ?
- Excel liste de valeurs - Guide
- Formule excel si compris entre plusieurs valeurs ✓ - Forum Excel
- Le fichier contient le nombre de voyageurs dans 3 gares. dans la cellule b5, saisissez une formule qui calcule le total et se met à jour si on change une valeur du tableau. quel total obtenez-vous ? quelle formule avez-vous saisie ? ✓ - Forum Google Docs
- Les données fournies dans le fichier à télécharger peuvent être synthétisées par le tableau récapitulatif ci-dessous. dans le fichier, générez ce tableau automatiquement (tableau croisé dynamique ou table de pilote) à partir des quatre premières colonnes. il manque 5 valeurs dans le tableau ci-dessous. retrouvez-les dans votre tableau, puis reportez-les arrondies à l’entier le plus proche. - Guide
- La valeur demandée ne peut pas être déterminée - Forum Téléphones & tablettes Android
3 réponses
Les seules possibilités pour un enum sont des types intégraux ou caractères (bool, char, wchar_t, int, long, long long, ...)
Quand tu écris
Quand tu écris
UP=(-1,0),, tu utilises l'opérateur virgule et ça revient exactement à écrire
UP = 0 ,(et le compilateur doit d'indiquer un bel avertissement indiquant que le
1est totalement ignoré.
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
bonjour, as-tu testé sans utiliser enum, pour t'assurer que le problème venait de là?