Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

utilité d'une version const d'une fonction non const

2 réponses
Avatar
meow
Bonjour,

Quelle est l'utilit=E9 de fournir une version const d'une fonction
dont on a d=E9j=E0 une version non const ? Comme dans l'exemple ci
dessous :

class vertex{
private:
Point p
public:
[=2E..]
Point& point() { return p;
}
const Point& point() const { return p; }
}

--Ben

2 réponses

Avatar
Michel Decima
In news:,
meow typed:
Bonjour,

Quelle est l'utilité de fournir une version const d'une fonction
dont on a déjà une version non const ? Comme dans l'exemple ci
dessous :

class vertex{
private:
Point p
public:
[...]
Point& point() { return
p; }
const Point& point() const { return p; }
}

--Ben


// utilisation de la version non-const
void reset_vertex(vertex& v) { v.point() = Point(); }

// utilisation de la version const
void print_vertex(vertex const& v) { std::cout << v.point(); }

si tu n'a que la version non-const, print_vertex ne compile pas.

Avatar
meow
Ah, bein oui tiens...
merci :)