您的位置:首页 > 编程语言 > C语言/C++

C++的四种强制转换

2015-06-30 15:43 330 查看
分别是:
static_cast  ; dynamic_cast
; reinterpret_cast
 ; const_cast。

static_cast
 : 一般我都是用C语法的强制转换。

dynamic_cast
:一般不用

reinterpret_cast
 :我比较常用。

将数据以二进制存在形式的重新解释;

它可以把一个指针转换成一个整数,也可以把一个整数转换成一个指针(先把一个指针转换成一个整数,

在把该整数转换成原类型的指针,还可以得到原先的指针值)。

比如:

CTest*
p;

WPARAM
wparam = reinterpret_cast<WPARAM>(p);
::SendMessage(, , wparam, 0);   

CTest*
p2= reinterpret_cast<CTest*>(wparam);//重新得到p

const_cast:一般不用
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: