Bonsoir à vous tous.
ce mot "const" qu'on met à la fin d'une méthode me taraude.peut être parce que je n'ai pas encore vu d'exemple où il est décisif. Prenant ce code simple:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#include <iostream>
 
using namespace std;
class Carre
{
private:
    double cote;
 
public:
    Carre(double x):cote(x){}
    double surface() const//sans const : ne chage rien
    {
        return cote * cote;
    }
    void set_cote(double x)
    {
        cote=x;
    }
 
    double get_cote()
    {
        return cote;
    }
 
};
int main()
{
    Carre carre1(25.0);
 
    cout << carre1.surface()<< endl;
    cout<<carre1.get_cote()<< endl;
    carre1.set_cote(30);
    cout<<carre1.surface()<<endl;
    cout<<carre1.get_cote()<<endl;
    return 0;
}
je ne trouve de différence que si j'écris la méthode surface de cette manière:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
double surface() 
    {
        return cote *= cote;
    }
Pouvez vous m’écrire un petit code simple où const fait la différence. Merci