C++ 0x 新特性(5):Nullptr

本文介绍了C++中的nullptr关键字,它是为了解决完美转发中的潜在问题而引入的。nullptr是一个特殊的常量nullptr_t,可以转换为任何指针类型,但不能转换为如int或char等非指针类型。此外,文章还提到了NULL宏的存在及其向后兼容性问题。

Nullptr对null指针增加的类型安全并且与rvalue reference 有切实联系. 在c++中通常用宏NULL(定义为0)和0作为null指针. 目前还未遇到过什么问题, 但是在perfect forwarding中可能潜在问题, 因此引入了nullptr来避免这种问题.

 

Nullptr 是一个常量nullptr_t, 可以转变为任何指针 类型, 但不能转为int 或者char等类型, 除perfect forwarding 函数外, nullptr还可以用在任何NULL能用的地方.

 

警告: NULL仍然被编译器支持并未被nullptr代替. 这主要是考虑向后兼容. 但在将来nullptr将在所有使用NULL的地方被使用, 而NULL将被作为向后兼容的方案.

 

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值