[const_cast] pb de valeur
Bonjour à toutes et à tous
J'ai un problème à vous soumettre. Attention, il est sans intérêt. Si vous avez des choses plus importantes à faire, passez votre chemin !! :)
Code:
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
| #include <iostream>
using namespace std;
int main()
{
int i = 3;
const int j = 4;
int *k = &i;
try
{
k = const_cast<int*>(&j);
*k = 5;
cout << "&j " << &j << endl;
cout << " k " << k << endl;
cout << " j " << j << endl;
cout << "*k " << *k << endl;;
}
catch(...)
{
cout << "Il y a une coucougnette..." << endl;
}
} |
voici le résultat:
Code:
1 2 3 4
| &j 0xbff1d7e4
k 0xbff1d7e4
j 4
*k 5 |
pourquoi j ne contient pas la valeur 5 ?
La suppresion de const à j donne bien la valeur de 5