c++ - 我应该包括 <tuple> 吗?

标签 c++ header

我是 C++ 的新手,我怀疑,这个问题当然不仅与 tuple 有关。 .

所以,我看了一个教程,代码大致是这样的:

#include <tuple>

std::tuple<...> t(...)

为什么 #include <tuple> ?特别是,考虑到我们显式编写 std::tuple 的事实.代码编译时没有 #include线刚刚好...

最佳答案

因为 <tuple>是一个包含 tuple 的头文件命名空间内的类 std .只是因为你明确地说 std::并不意味着如果不包含它,编译器就能够找到它。

在这种情况下它对您有用的原因可能是因为您包含的另一个 header 已经包含 <tuple>因此您的代码包括 <tuple>间接地或因为您正在构建的编译器自动包含它。这是标准保证的,不应依赖。始终包含使代码可移植所需的 header 。

关于c++ - 我应该包括 <tuple> 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57590793/

相关文章:

javascript - 通过 AJAX 调用时,PHP 下载脚本不起作用

C --> header 和变量

c++ - 在 c++ 函数中访问 objective-c 类的 ivars

c++ - 如何生成 setter 和 getter,并使用 C++ 预处理器定义 Q_PROPERTY()

c++ - 'string' 数组的动态分配

c++ - 将 String(同一内存)用于 Map 索引和 Object 名称

c - 来自 fgets 的意外 header 信息

c++ - 有没有办法警告我全局命名空间污染?

Java - 如何在接口(interface)实现中获取http header ?

html - 调整浏览器大小时更改页眉的彩色背景高度