????3.const_cast
?????÷???const_cast<type_id> (expression)
???????????????????????const??volatile?????????const ??volatile??????? type_id??expression??????????????
??????????????????????????????????????????
??????????????????????????????????????????????
??????????????????????????
// const_cast
#include <iostream>
using namespace std;
void print (char * str)
{
cout << str << endl;
}
int main () {
const char * c = "sample text";
print ( const_cast<char *> (c) );
return 0;
}
?????????????
????sample text
??????? print(c)?????????????????
????4??reinterpret_cast
????reinterpret_cast??C++?????????????????
????????????????????????????????????????????????????????????н??ж?????????? ???磺
????int *n= new int ;
????double *d=reinterpret_cast<double*> (n);
????????м?????? d?????????.???????reinterpret_cast ????????? n ?????λ??d?? ??н??б?????????
????class A {};
????class B {};
????A * a = new A;
????B * b = reinterpret_cast<B*>(a);
?????????????C++??????????????壬?????????????????????????????????????????????????????