空指针常量转换由下面的规则sec指定。4.10/1 N3797:
整数类型的空指针常量可以转换为std::nullptr_t类型的prvalue。注意:结果的prvalue不是空指针值。-end注记
我认为以下就是这种转换的一个例子:
static_cast<std::nullptr_t>(0);但这似乎不是真的,因为
#include <iostream>
#include <iostream>
using namespace std;
int main()
{
void *p = static_cast<std::nullptr_t>(0);
cout << p; //0- Why? It is not a null pointer value
}演示
发布于 2014-07-31 14:05:59
表达式p是一个空指针。可以将std::nullptr_t类型的prvalue转换为任何指针。它是初始化表达式static_cast<std::nullptr_t>(0),而不是空指针值。
https://stackoverflow.com/questions/25060916
复制相似问题