Une question assez théorique... Pourquoi les références constantes ne se comportent pas de la même manière que les pointeurs constants et je peux réellement changer l'objet vers lequel elles pointent ? Ils ressemblent vraiment à une autre déclaration de variable simple. Pourquoi les utiliserais-je jamais ? Ceci est un court exemple que j'exécute qui compile et s'exécute sans erreur :
int main (){
int i=0;
int y=1;
int&const icr=i;
icr=y; // Can change the object it is pointing to so it's not like a const pointer...
icr=99; // Can assign another value but the value is not assigned to y...
int x=9;
icr=x;
cout<<"icr: "<<icr<<", y:"<<y<<endl;
}