Bonjour,
y as un truc que je ne pige pas trop. dans ce code
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
#include <iostream>
#include <string>
using namespace std;
struct A
{
    A(string & s):m_s(s){};
    string m_s;
};
 
 
int main()
{
    A a("essai");
    cout << a.m_s << endl;
    return 0;
}
fait une erreur car "essai" n'est pas une string et ne peut donc être passé en référence. Ca ok.
Par contre en ajoutant const dans le constructeur de A

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
#include <iostream>
#include <string>
using namespace std;
struct A
{
    A(string const & s):m_s(s){};
    string m_s;
};
 
 
int main()
{
    A a("essai");
    cout << a.m_s << endl;
    return 0;
}
ce code compile et fonctionne!!!