为什么我可以使用 nullptr 而不包含 STL?

2024-02-23

The C++ nullptr属于类型std::nullptr_t.

为什么一个程序喜欢

int main() {
 int* ptr = nullptr;
}

仍然可以工作,尽管它不包含任何 STL 库?


在C++11中他们想添加一个关键字来替换宏NULL(基本上定义为#define NULL 0),既因为它是一个核心概念,也因为当您被迫使用时会遇到一些恼人的错误0作为你的空指针常量。

提出了一些关键词。搜索大型代码库以确保关键字未被使用,并且它仍然描述了他们想要的内容(空指针常量)。

nullptr被发现足够罕见且足够令人回味。

的类型nullptr默认情况下没有给出关键字名称,因为大多数程序都不需要关键字名称。您可以通过以下方式获取它decltype(nullptr)或包括一个std标题和使用std::nullptr_t.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么我可以使用 nullptr 而不包含 STL? 的相关文章

  • Task.Factory.StartNew 或 Parallel.ForEach 对于许多长时间运行的任务? [复制]

    这个问题在这里已经有答案了 可能的重复 Parallel ForEach 与 Task Factory StartNew https stackoverflow com questions 5009181 parallel foreach
  • 不同提供商的相同 EDMX 文件

    我正在开发一个项目 其中有一个本地数据库 SQL CE 在不存在与服务器的连接的情况下用作缓冲区 在服务器上我想使用相同的数据库布局 当然 我想使用服务器和客户端上可用的 Common dll 中的相同 EDMX 文件 在客户端中 我有一个
  • 使用sqlbulkcopy之前如何创建表

    我有一个 DBF 文件 我正在尝试导入该文件 然后将其写入 SQL 表 我遇到的问题是 如果我使用 SqlBulkCopy 它需要我提前创建表 但在我的场景中这是不可能的 因为 dbf 文件不断变化 到目前为止 这是我的代码 public
  • 如何向WebRequest添加参数?

    我需要从 Web 服务调用一个方法 所以我编写了以下代码 private string urlPath http xxx xxx xxx manager string request urlPath index php org get or
  • C++0x 初始值设定项列表示例

    我想看看这个现有代码示例如何利用 C 0x 初始化列表功能 示例0 include
  • 如何从 C# 调用 F# 类型扩展(静态成员函数)

    FSharp 代码的结构如下 我无法控制源代码 namespace FS
  • 多线程 - 比单线程慢

    当我使用多个线程而不是单线程运行程序时 它会变慢 不是应该更快吗 该程序应该遍历从起始目录开始的所有目录 并查找并打印所有名为 X 的文件 代码如下 while done pthread mutex lock lock if list is
  • 从 Golang 调用 C 函数

    我想在 Golang 中编写控制器逻辑并处理 json 和数据库 同时在 C 中使用我的数学处理模型 在我看来 调用 C 函数的开销必须尽可能低 就像设置寄存器 rcx rdx rsi rdi 一样 执行一些操作fastcall 并获取 r
  • += 运算符在 C++ 中是如何实现的?

    这是我一直在思考的一个问题 但从未找到任何资源来说明这个问题的答案 事实上它不仅是为了 也适用于它的兄弟姐妹 即 等等 当然不是 考虑这个例子 int a 5 a 4 this will make a 9 现在考虑等效表达式 a a 4 T
  • 多个线程访问一个变量

    我在正在读的一本教科书中发现了这个问题 下面也给出了解决方案 我无法理解最小值怎么可能是 2 为什么一个线程不能读取 0 而所有其他线程都执行并写入 1 而无论是1还是2 最后写入的线程仍然必须完成自己的循环 int n 0 int mai
  • 重定向 std::cout

    我需要一个类 在其对象的生命周期内将一个 ostream 重定向到另一个 ostream 经过一番修补后 我想出了这个 include
  • 文件加密与解密问题

    我一直在尝试在 VC Express 2010 中加密和解密文件 我见过的所有教程和文档都需要两个FileStreams 来加密文件 一个用于读取未加密的版本 另一个用于加密 当我实际编写代码时 它不断抛出错误 告诉我它无法打开该文件 因为
  • 如何解决文件被另一个进程使用的问题?

    我一直在 VS NET 2010 中调试 没有任何问题 但现在无法建造 我收到错误 Unable to copy file filename to bin Debug filename The process cannot access t
  • 如何使用 C# 将表格粘贴到 Ms-Word 文档的末尾

    我有一个预制的 Word 模板 其中有一个表格 我想打开它 然后在文档末尾添加 粘贴 另一个表格 问题是它不会转到文档的末尾 而是将新表格粘贴到原始表格的第一个单元格中 任何帮助将不胜感激 previous code copied a ta
  • Code::Blocks 中的调试似乎不起作用 - 缺少调试符号

    我正在尝试在 Code Blocks 中调试程序 我跟着本指南 http wiki codeblocks org index php title Debugging with Code Blocks and 这个短视频 http www y
  • 动态菜单创建IoC

    我想知道是否有人知道我如何创建如何使用 AutoFac 之类的东西来让我动态地允许 dll 创建自己的表单和菜单项以在运行时调用它们 所以如果我有一个 员工 dll 新入门表格 证书表格 供应商 dll 供应商详细信息来自 产品形态 在我的
  • 包含从代码隐藏 (ASP.NET C#) 到 ASPX 中的图像概述的图像列表 [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • C# 和断点 - 这里有魔术师吗?

    我有这个 public static void ByLinkText string text for var i 0 i lt 50 i try Setup Driver FindElement By LinkText text Click
  • execlp() 系统调用输出错误

    这个非常简单的例子exec 系统调用 在这里 我试图打电话execlp 两次 但是 我没有得到例外的输出 它仅显示当前目录的第一次调用的输出 include
  • 查找和替换正则表达式问题

    感谢这里对我其他问题的所有大力帮助 我开始掌握正则表达式 但我仍然对这个一无所知 我的代码是 StreamReader reader new StreamReader fDialog FileName ToString string con

随机推荐

  • 在.NET中设置打印机“保留打印文档”属性

    这就是我们正在尝试做的事情 我们希望以一种不引人注目的方式获取客户在其计算机上打印的所有内容 我们所有的客户都运行 POS 系统并专门使用 Windows XP 并将其发送给我们 我们决定最好的方法是创建一个 c 向我们发送假脱机文件的应用
  • 如何将文本 URL 转换为 PHP 页面中的可点击链接?

    我确信这是一个非常简单 明显的答案 但我的大脑已经崩溃了 我似乎无法理解它 我有一个 PHP 站点 允许用户将信息发布到 mySQL 中的文本字段 这些帖子都可以在线查看 在发布 编辑模式下 该字段是 HTML 表单中的文本区域 在阅读模式
  • 在开发环境中覆盖ActionMailer的邮件地址

    在我的开发环境中 我在本地测试时使用生产数据库的副本 出于测试和防止向真实用户发送测试 开发电子邮件的原因 在开发模式下覆盖邮件地址的最佳方法是什么 我知道我可以在每个邮件程序中编写逻辑 但我有几个 最好将它们全部放在一个地方 我可以覆盖m
  • IllegalArgumentException:在 ViewPager 中找不到片段 id 的视图 --- ViewPager

    我遇到了困扰我好几天的问题 有一个ViewPager在主要活动中持有 3Fragments 作为选项卡片段 在里面first片段有一个ListView哪个持有一些观点 哪个是最重要的 另一个ViewPager 我想在子里保留一些照片View
  • 如何在本地测试并发?

    本地测试并发的最佳方法是什么 即我想测试 10 个并发点击 我知道类似的服务Blitz http blitz io 然而 我试图找到一种更简单的方法在本地进行测试以对抗竞争条件 有任何想法吗 也许通过卷曲 查看 Apache Bench a
  • 如何从 csv 文件读取表格中的文本

    我是新使用 tm 包 我想读取一个 csv 文件 其中一列包含 2000 个文本 第二列包含因子变量 yes no 到语料库中 我的目的是将文本转换为矩阵并使用因子变量作为预测目标 我还需要将语料库划分为训练集和测试集 我阅读了一些文档 例
  • GROUP BY 子句在 sqlite 中获取逗号分隔值

    我的表结构是这样的 使用sqlite3 CREATE TABLE enghindi eng TEXT hindi TEXT 我有一张名为enghindi其中有两列名为hindi eng 我想合并 eng 列的记录 并通过逗号分隔合并印地文单
  • 如果没有人调用interrupt(),可以忽略InterruptedException吗?

    如果我创建自己的线程 即不是线程池 并且在某个地方调用sleep或任何其他可中断方法 是否可以忽略 InterruptedException如果我知道代码中没有其他人在线程上进行中断 换句话说 如果线程的寿命应该与 JVM 一样长 这意味着
  • 如何让 PHP SOAP 客户端与使用无效证书通过 SSL 运行的服务进行通信

    我尝试使用 PHP SOAP 客户端使用 SOAP 服务 但失败并显示以下消息 SoapFault SOAP ERROR Parsing WSDL Couldn t load from https domain com webservice
  • MathJax 渲染模糊

    MathJax http www mathjax org 在浏览器中的渲染 右 比在 LaTeX 中的等效 PDF 渲染 左 要模糊得多 这是 Javascript 限制 浏览器限制 MathJax 限制 错误 设计原因还是其他原因 有什么
  • 创建 AMI 映像作为 cloudformation 堆栈的一部分

    我想创建一个 EC2 cloudformation 堆栈 基本上可以按以下步骤描述 1 启动实例 2 配置实例 3 停止实例并从中创建 AMI 映像 4 使用创建的 AMI 映像作为源创建自动缩放组以启动新实例 基本上我可以在一个 clou
  • 当我需要转义 Html 字符串时?

    在我的遗留项目中 我可以在字符串发送到浏览器之前看到 escapeHtml 的用法 StringEscapeUtils escapeHtml stringBody 我从 api 文档知道 escapeHtml 的作用 这里是给出的示例 Fo
  • 构建 Mac 和 Windows GUI 应用程序

    我计划为 Mac 和 Windows 构建一个 GUI 应用程序 我一直在技术选择方面进行一些研究 例如语言 库和构建工具 以便我可以在两个平台之间共享尽可能多的代码 主要要求是 满足 Mac App Store 要求 Mac 和 Wind
  • C# 对象类型比较

    如何比较声明为类型的两个对象的类型 我想知道两个对象是否属于同一类型或来自同一基类 任何帮助表示赞赏 e g private bool AreSame Type a Type b Say a and b是两个对象 如果你想看看是否a and
  • QFormLayout 中的 QSpacerItem - 垂直展开

    我想在我的内心拓展一个空间QFormLayout 但无论如何QFormLayout仅使用QSpaceItem sizeHint 有谁知道解决这个问题的方法 或者处理这个问题的正确方法 MyWidget MyWidget QWidget pa
  • Kinesis 分区键始终位于同一个分片中

    我有一个包含 2 个分片的运动流 如下所示 StreamDescription StreamStatus ACTIVE StreamName my stream Shards ShardId shardId 000000000001 Has
  • fullcalendar jquery 插件标题字符串中的 HTML

    我认为 fullcalendar jquery plugin 是一个非常好的解决方案 但是 我注意到插件转义了 htmlEscape 标题 但我需要格式化标题中的一些字符串 例如粗体文本 颜色或小图像 使用另一个插件 例如 qTip 如示例
  • 陷入 Gradle Build 运行状态

    当尝试在 Android Studio 2 1 在 Ubuntu 16 04 上 上构建我的应用程序时 它陷入了以下注释 Executing tasks app generateDebugSources app mockableAndroi
  • Helm:从键可变的 Map 中获取值

    我有一个舵图如下 dns entries cluster1 xx xx xx xx cluster2 xx xx xx xx 安装 Helm Chart 时 集群值也会动态设置 在模板中 我需要从上面的地图中动态选择它 if hasKey
  • 为什么我可以使用 nullptr 而不包含 STL?

    The C nullptr属于类型std nullptr t 为什么一个程序喜欢 int main int ptr nullptr 仍然可以工作 尽管它不包含任何 STL 库 在C 11中他们想添加一个关键字来替换宏NULL 基本上定义为