Bonjour,
J'ai un problème avec une méthode à l'intérieur d'une classe, j'ai un message d'erreur que je ne comprends pas.
Message d'erreur:
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
37
38
39
40 #include<iostream> #include<string> using namespace std; class A { public: int hf(const string name,const string addr){ string s=name+addr; unsigned long hash = 5381; char c; for(unsigned int i=0; i<s.size(); i++) { c=s[i++]; hash = ((hash << 5) + hash) + c; /* hash * 33 + c */ } if (hash>0) return hash; /*else return -hash;*/ } //..... // méthode qui ne marche pas.... bool methodeproblematique ( const string & name, const string & addr, int & sumIncome, int & sumExpense ) const { int key=hf(name,addr); return true; } // todo }; int main() { //.... return 0; }
Comment puis je résoudre ce problème?forum.cpp: In member function ‘bool CTaxRegister::Audit(const string&, const string&, int&, int&) const’:
forum.cpp:30:26: error: passing ‘const CTaxRegister’ as ‘this’ argument of ‘int CTaxRegister::hf(std::string, std::string)’ discards qualifiers [-fpermissive]
Partager