Surdéfinitions et const

Surdéfinitions et const - C++ - Programmation

Marsh Posté le 20-02-2005 à 17:00:23    

Bonjour à tous!
 
Dans le cadre d'un projet à but purement pédagogique, je suis parfois amené à faire ceci:
 

Code :
  1. class Forme
  2. {
  3.         private:
  4.                 string m_Nom;
  5.                 Couleur m_Couleur;
  6.                 Geometrie* m_Geometrie;
  7. ...
  8.                 const Geometrie& getGeometrie() const;
  9.                 Geometrie& getGeometrie();
  10.                 const Couleur& getCouleur() const;
  11.                 Couleur& getCouleur();
  12. ...
  13. };


C'est à dire faire plusieurs versions d'une seule et même méthode uniquement en faisant varier le const.
Ma question est donc: est-ce que ca se fait courament? J'entend bien que c'est un projet pédagogique est qu'il faut donc que le code soit le plus propre possible...
Merci pour vos réponses!


---------------
Mon Flickr
Reply

Marsh Posté le 20-02-2005 à 17:00:23   

Reply

Marsh Posté le 21-02-2005 à 11:58:09    

oui, ca peut se faire en effet
 
pour obtenir un iterateur sur le debut/la fin d'un conteneur de la STL, cette technique est utilisée me semble
 
const_iterator begin() const;
iterator begin();
 
(a confirmer pour pas que je dise de betises)


---------------
-( BlackGoddess )-
Reply

Marsh Posté le 21-02-2005 à 14:39:34    

Merci beaucoup, c'est de toute façon la seule méthode que j'ai trouvé pour faire compiler mon code.


---------------
Mon Flickr
Reply

Marsh Posté le 21-02-2005 à 14:45:35    

c'est pas que ça peut se faire c'est une histoire de sémantique. Si quand this est const tu veux fournir un accès const à une ressource ou pas, etc

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed