NonConst TO Const

int  main()
{
    
int i=0;
    
const int &j=i;
    cout
<<j<<endl;
    i
=5;
    cout
<<j<<endl;
    
//j=5;
    
//cout<<j<<endl;
    const int *k=&i;
    i
=9;
    cout
<<*k<<endl;
    
const int m=static_cast<const int> (i);
    cout
<<m<<endl;
    
return 0;
}
const int m=static_cast<const int> (i);换成const int m=(const int) i;也可以(old style casts)。
static_cast不能换为:const_cast,reinterpret_cast,或者dynamic_cast

error C2440: 'const_cast' : cannot convert from 'int' to 'const int'
error C2440: 'reinterpret_cast' : cannot convert from 'int' to 'const int'
error C2680: 'const int' : invalid target type for dynamic_cast

你可能感兴趣的:(c)