当我尝试使用 static_cast 将 double* 转换为 int* 时,出现以下错误:
invalid static_cast from type ‘double*’ to type ‘int*’
这是代码:
#include <iostream>
int main()
{
double* p = new double(2);
int* r;
r=static_cast<int*>(p);
std::cout << *r << std::endl;
}
我知道在 double 和 int 之间转换会出现问题,但为什么在 double* 和 int* 之间转换会出现问题?