//C++新特性 强制转换const_cast
/*
强制类型转换时具有一定风险的,有的转换并不一定安全,如果把整数数值转换成指针,把基类指针转换成派生指针
把函数指针转换成另外一种函数指针,把常量指针转换成非常量指针等
1.const_cast 只针对指针,引用,this 去除const属性
2.static_cast 基本等价于隐式转换的一种类型转换运算符,可使用于需要明确隐转换的地方
3.reinterpret_cast 具备虚函数的基类与派生类之间的指针或引用的转换
4.dynamic_cast 用于进行各种类型不同的转换
*/
//dynamic_cast 具备虚函数的基类与派生类之间的指针或引用的转换
//不同类型的指针转换
//不同类型引用之间
//指针和容纳指针的整数类型之间的转换
//显示强转 在C中相当于 int *p = (int *) n;
int main()
{
//高危险的转换,强行转换
int n = 1;
int * p = reinterpret_cast<int *>(n);
char * pCh = reinterpret_cast<char*>(n);
}