【发布时间】:2013-09-22 22:24:18
【问题描述】:
我的编译器是最新的 VC++ 2013 RC。
void f()
{
int n1 = 0;
int n2 = reinterpret_cast<int>(n1); // error C2440
}
错误 C2440:“reinterpret_cast”:无法从“int”转换为“int”
为什么reinterpret_cast不能用在这么明显的情况下?
【问题讨论】:
-
听起来像一个错误
-
有趣,在MSVC2010中也是这样
-
这也不编译: const int x = 10; int y = const_cast
(x); -
@LuchianGrigore:(我的编译器是最新的 VC++ 2013 RC。)是什么泄露了它? :)
标签: c++ pointers integer type-conversion reinterpret-cast