const_cast,用于修改类型的const或volatile属性。
const_cast<type_id> (expression)
该运算符用来修改类型的const或volatile属性。除了const 或volatile修饰之外, type_id和expression的类型是一样的。
一、常量指针被转化成非常量的指针,并且仍然指向原来的对象;
二、常量引用被转换成非常量的引用,并且仍然指向原来的对象;
三、const_cast一般用于修改底指针。如const char *p形式。
reinterpret_cast是C++里的 强制类型转换 符。
reinterpret_cast<type-id> (expression)
reinterpret_cast是C++里的 强制类型转换 符。
reinterpret_cast<type-id> (expression)
type-id 必须是一个指针、引用、算术类型、函数指针或者成员指针。它可以把一个指针转换成一个整数,也可以把一个整数转换成一个指针(先把一个指针转换成一个整数,再把该整数转换成原类型的指针,还可以得到原先的指针值)。
const_cast的应用:http://blog.csdn.net/hackbuteer1/article/details/6550736,这篇文章值得一看
int p1 = 1;
int* p2 = reinterpret_cast<int*>(p1);
int* p2 = (int*)p1;
int p3 = reinterpret_cast<int>(p2);
int p3 = (int)p2;
const_cast的应用:http://blog.csdn.net/hackbuteer1/article/details/6550736,这篇文章值得一看