static_cast不能转换掉exdivssion的const、volitale、或者__unaligned属性。 static_cast不能用于不同指针类型间的转换,不能用于不同引用类型间的转换,不能用于指针和整数间的类型转换; int* ptr =newint;intp6 =10;void* p1 = static_cast<void*>(ptr);//正确,可用于void*空指针间的类型转换;//char* p3...
static_cast相当于传统的C语言里的强制转换,效果就相当于加个括号:int a=(long)b;建议用搜索一下 static_cast 这个词,你能学到更多东西。
1.dynamic_cast:动态类型转换,主要应用于将基类的指针或引用强制转化为派生类的指针或引用。 2.static_cast:静态转换,c++编译器所有的隐式转换都可以用它来完成。用于小类型转换为大类型的,不在乎精度的丢失。 3.const_cast:常量转换,将变量的常属性转换掉。只能用于增加或去除常属性。 4.reinterpret_cast:重解释...
1) static_cast 用法:static_cast <typeid> (expression) 说明:该运算符把expression转换为typeid类型,但没有运行时类型检查来确保转换的安全性。 用途: a)用于类层次结构中基类和派生类之间指针或者引用的转换。up-casting (把派生类的指针或引用转换成基类的指针或者...
用法:static_cast < type-id > ( expression ) 该运算符把expression转换为type-id类型,但没有运行时类型检查来保证转换的安全性。它主要有如下几种用法: ①用于类层次结构中基类(父类)和派生类(子类)之间指针或引用的转换。 进行上行转换(把派生类的指针或引用转换成基类表示)是安全的; ...
9.static_cast和dynamic_cast的区别,后者转化指针或引用失败时返回什么 10.C++编译链接的过程,链接的方式,多个程序共享一个动态库,其运行时加载几次,占用谁的内存 11.两个cpp中都定义int a会不会报错 12.STL有哪些容器,map的类型,区别 13.网络编程接触过吗(直接说了没有) ...
reinterpret_cast适用于指针转换为另一种指针 const_cast适用于常指针变量,可以使常指针变量变为非常指针变量 static_cast主要用于基本类型转换和拥有继承关系变量之间的转换 dynamic_cast只能在继承对象的指针之间或引用之间进行类型转换 注意:需要添加头文件#include<typeinfo>...