C++基本语言 类型转换

1、static_cast

静态转换,在编译的时候就完成。用法和C里面的强制类型转换一样

double f=100.34f;
int i=(int)f;//C语言风格
int i2=static_cast<int>(f);//C++风格

2、dynamic_cast

主要应用于 运行时类型转换和检查。主要用于父类型和子类型之间转换

3、const_cast

去除指针或引用的const属性

const int ai=90;
//int ai2=const_cast<int>(ai); 不能转,ai不是指针也不是引用
const int *pai=&ai;
int *p=const_cast<int>(pai);//可以转


版权声明:本文为m0_46398969原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。