请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

关于reinterppret_cast和强制类型转换

class User2 :public Observer {
public:
virtual void Update(void* pArg) {
cout << “User2 Got News:” << reinterpret_cast<char*>(pArg) << endl;
}
};
老师,在这一段代码里面我们原本是直接使用(char*)的强制类型转换,这两种方法之间有什么区别呢?是不是即便reinterppret_cast很不安全,但它至少“要求转换前后的类型所占用内存大小一致”,而强制类型转换就彻底不做任何检查了?

正在回答

1回答

在指针的转换上, reinterpret_cast等价与C语言的强制类型转换;所以这种转换使用时一定要小心谨慎。

0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信