c++ static_cast,const_cast,reinterpret_cast,dynamic_cast
来源:互联网 发布:鼠标 淘宝店推荐 编辑:程序博客网 时间:2024/05/20 01:13
static_cast
void test1()
{
int f=3,s=2;
double r = static_cast<double>(f)/s;
cout<<r<<endl;
}
const_cast
从表达式去除const 属性
void test1()
{
class B
{
public:
int m_i;
};
B b0;
b0.m_i = 100;
const B b1 = b0;
//b1.m_i = 200;
cout<<b0.m_i<<" "<<b1.m_i<<endl;
const_cast<B&>(b1).m_i = 300;
cout<<b0.m_i<<" "<<b1.m_i<<endl;
}
reinterpret_cast
void test1()
{
int n = 9;
double d = static_cast<double>(n);
cout<<n<<" "<<d<<endl;
double dd = reinterpret_cast<double &>(n);
cout<<n<<" "<<dd<<endl;
}
dynamic_cast
在运行时检查,用于继承关系中
不是强制转换,带有某种咨询性质
void test1()
{
class B{};
class C:public B{};
class D:public C{};
D* pd = new D;
C* pc = dynamic_cast<C*>(pd);
B* pb = dynamic_cast<B*>(pd);
void *p = dynamic_cast<C*>(pd);
C *pc1 = pd;
B *pb1 = pd;
void *p1 = pd;
}
- dynamic_cast、const_cast、static_cast、reinterpret_cast
- static_cast, dynamic_cast, const_cast, reinterpret_cast
- const_cast,reinterpret_cast,static_cast,dynamic_cast
- const_cast、static_cast、reinterpret_cast、dynamic_cast
- static_cast,const_cast,dynamic_cast,reinterpret_cast
- dynamic_cast;const_cast;static_cast;reinterpret_cast;
- dynamic_cast 、reinterpret_cast 、 static_cast 、 const_cast
- dynamic_cast,const_cast,static_cast,reinterpret_cast
- static_cast,dynamic_cast,reinterpret_cast,const_cast
- static_cast, dynamic_cast, reinterpret_cast, const_cast
- static_cast、const_cast、reinterpret_cast、dynamic_cast
- const_cast,reinterpret_cast,static_cast,dynamic_cast
- const_cast,dynamic_cast,reinterpret_cast,static_cast
- static_cast dynamic_cast const_cast reinterpret_cast
- static_cast dynamic_cast reinterpret_cast const_cast
- static_cast | dynamic_cast | const_cast | reinterpret_cast
- static_cast,dynamic_cast,const_cast & reinterpret_cast
- static_cast, dynamic_cast, const_cast, reinterpret_cast
- GBDT和Xgboost模型对比总结
- 10.1 分别通过函数和重载运算符来实现复数相加
- PTA.5-1 复数相加
- 在每行、每列递增的二维数组中找出给定的target 的位置
- C语言宏定义详解
- c++ static_cast,const_cast,reinterpret_cast,dynamic_cast
- 树莓派使用uart串口与串口设备通信
- mysql开启slow_query_log
- win10下安装vmware tools,实现文件传送
- chrome插件
- 页面背景固定
- Sweet Alert Dialog:清新文艺,快意灵动的甜心弹框
- DOM模型演示---增删改查中的查询2
- SmartConfig技术原理