美文网首页
C++ 11:nullptr 字面值常量

C++ 11:nullptr 字面值常量

作者: fck_13 | 来源:发表于2020-03-16 01:16 被阅读0次
    • 为什么会有 nullptr?
      这要从C++目前发展的整个趋势来讲,C++11 大部分的新特性都放在了更安全的类型和对象的生命周期控制。而在C++11 之前使用的NULL,其实就是一个 int 类型的0。这显然不是一种安全的类型表示。所以,在C++ 11 中,添加了nullptr。使得空指针的描述有一种更安全的方式。

    • nullptr如何使用?
      nullptr用起来很简单,用它替换你之前使用NULL的地方就可以了。默认存在从nullptr到任何类型的指针的隐式转换,反之也成立。强烈建议在C++ 11 及以后的版本中使用 nullptr

    • 其他

    typedef decltype(nullptr) nullptr_t; // 总感觉鸡生蛋, 蛋生鸡的关系反了
    
    #define NULL 0        //C++ 11 之前
    
    #define NULL nullptr  // C++11 起
    

    相关文章

      网友评论

          本文标题:C++ 11:nullptr 字面值常量

          本文链接:https://www.haomeiwen.com/subject/wbxwehtx.html