C++:nullptr

C++:nullptr

C++:nullptr

nullptr 关键字指定类型的 null 指针常量 std::nullptr_t ,该常量可转换为任何原始指针类型。 尽管可以使用关键字 nullptr 而不包含任何标头,但如果代码使用类型 std::nullptr_t ,则必须通过包含标头来定义该类型 。
此 nullptr 关键字还在托管代码应用程序的 c + +/cli 中定义,并且不能与 ISO 标准 c + + 关键字互换。 如果你的代码可能是使用 /clr 针对托管代码的编译器选项编译的,则 __nullptr 在你必须保证编译器使用本机 c + + 解释的任何代码行中使用。
备注
避免使用 NULL 或零 (0) 为 null 指针常量; 在 nullptr 大多数情况下,不太容易受到滥用和工作。 例如,给定 func(std::pair<const char *, double>),那么调用 func(std::make_pair(NULL, 3.14)) 会导致编译器错误。 宏 NULL 展开为 0 ,以便调用 std::make_pair(0, 3.14) 返回 std::pair<int, double> ,这在中不能转换为 std::pair<const char *, double> 参数类型 func 。 调用 func(std::make_pair(nullptr, 3.14)) 将会成功编译,因为 std::make_pair(nullptr, 3.14) 返回 std::pair<std::nullptr_t, double>,此结果可转换为 std::pair<const char *, double>。

该博文为原创文章,未经博主同意不得转载,如同意转载请注明博文出处
本文章博客地址:https://blog.csdn.net/it_cplusplus/article/details/118158958

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值