Se connecter avec
S'enregistrer | Connectez-vous

l'utilisation de l'opérateur

Dernière réponse : dans Programmation
Lassé par la pub ? Créez un compte

bonjour ,

desolé j'ai oublié les balise , voila je les mets :
voici la définition d'un opérateur utiliser dans un objet c++

  1. Objet operator+(objet const & a, objet const & b);
  1.  
pour l'opérateur d'addition

est t il possible d'écrire :
  1. inline bool operator+(objet const & a, objet const & b)
  1.  
???
si oui pourquoi merci
Expert Programmation

Pour online, je t'invite à regarder l'aide sur ce réservé du langage.

Quant au type bool, que l'on précise dans un cas mais pas dans l'autre, c'est effectivement troublant.
En fait, en C, si tu ne déclares pas de type explicite pour une fonction, celle-ci renvoie un int.

Le type bool est propre au C++, au contraire du C qui l'ignore.
Mais ce type est codé sur un octet et peut donc être considéré comme un char qui contrairement à ce qu'on s'image n'est pas autre chose qu'un entier.

Te voilà donc avec un entier sur 64bits (ou 32bits selon ton environnement) d'un côté, et avec un entier sur 8bits de l'autre.

Dans tous les cas, les opérations de comparaison fonctionneront, dans la mesure où FAUX est codé par 0, quelque soit le nombre de bits, et VRAI est codé par !0 (différent de zéro), toujours quelque soit le nombre de bits.

Pour bien faire, précise toujours le type.
zeb a édité ce message

Merci pour ces explications , en fait je suis sur un projet , la premiere étape consiste à faire un maillage 2d,
voilà , j'ai deux fichiers dont les contient des points et leurs coordonnées respectives , les points sont indexés par des numéros , exemple :
1 -2 0 --> le point "1" a pour coordonnées ( -2,0)
2 5 4---> le point "2" a pour coordonnées (5,4)
3 0 -3.6->le point "3" a pour coord( 0 ,-3.6 )
.....et ainsi de suite

le deuxieme fichier contient contient la représentation des triangles , par :
1 2 8 3 signifie : le triangle "1" a pour sommet les points 2,8 et 3
2 4 8 5 signifie : le triangle "2" a pour sommet les points 4, 8 et 5
..... et ainsi de suite

je dois codé en c++ , mais j'y connais pas encore grande chose , mais j'ai commencé à bricoler un peut , pour faire ce travail , j'ai commencé par imaginer une première classe celle des coordonnées
que voici :
  1. class Coordonnee
  2. {
  3. public:
  4. Coordonnee(double x, double y):x_(x),y(y){}
  5. double x() const{return x_;}
  6. double y() const{return y_;}
  7. private:
  8. double x_;
  9. double y_;
  10. };
[code="cpp"]

à ce niveau est ce que c'est correcte ? le code tourne bien mais j'aimerai savoir si ça veut bien dire ce qu'on me demande de faire

merci à vous

Merci pour ces explications , en fait je suis sur un projet , la premiere étape consiste à faire un maillage 2d,
voilà , j'ai deux fichiers dont les contient des points et leurs coordonnées respectives , les points sont indexés par des numéros , exemple :
1 -2 0 --> le point "1" a pour coordonnées ( -2,0)
2 5 4---> le point "2" a pour coordonnées (5,4)
3 0 -3.6->le point "3" a pour coord( 0 ,-3.6 )
.....et ainsi de suite

le deuxieme fichier contient contient la représentation des triangles , par :
1 2 8 3 signifie : le triangle "1" a pour sommet les points 2,8 et 3
2 4 8 5 signifie : le triangle "2" a pour sommet les points 4, 8 et 5
..... et ainsi de suite

je dois codé en c++ , mais j'y connais pas encore grande chose , mais j'ai commencé à bricoler un peut , pour faire ce travail , j'ai commencé par imaginer une première classe celle des coordonnées
que voici :
  1. class Coordonnee
  2. {
  3. public:
  4. Coordonnee(double x, double y):x_(x),y(y){}
  5. double x() const{return x_;}
  6. double y() const{return y_;}
  7. private:
  8. double x_;
  9. double y_;
  10. };
[code="cpp"]

à ce niveau est ce que c'est correcte ? le code tourne bien mais j'aimerai savoir si ça veut bien dire ce qu'on me demande de faire

merci à vous
Lassé par la pub ? Créez un compte