c++ - 为什么 'int'只用作int,为什么不用作C++中的std::int?

标签 c++ std standards

与当前C++中的standard定义的一切不同,是否有任何特定原因要保留intchar,....,main()等。 (不谈论+-%等等,因为它们不是特定于语言的)

为什么不是这样:

std::int std::main(std::int argc, std::char *argv[])
{
    //Sample C++ code (incorrect with current standards though)
    std::return 0;
}

标准化不是完全超出标准范围吗?

我相信,它们是编写程序时随处可见的基本组件,无论是简单的还是复杂的。它们不包含在标准化中,仅遵循 DRY 原则。

最佳答案

诸如intreturn之类的关键字以及main()函数都包含在the C++ standard中。 std并不意味着只有那些东西被标准化了。相反,它引用标准库中的内容(类似于关键字,它是标准的一部分)。要使用标准库,需要使用诸如#include <vector>之类的包含文件,但可以在没有任何#include的情况下使用关键字。

关于c++ - 为什么 'int'只用作int,为什么不用作C++中的std::int?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60598554/

相关文章:

c++ - 在 C++ STL 中使用 Map 获取编译错误?

c++ - std::make_unique 可以与抽象接口(interface)一起使用吗?

c++ - 使用 std::bind 分别绑定(bind)参数和对象实例

c++ - std::vector<Class *> 没有正确构造拷贝

c++ - 在 C++ 中,<、== 和 > 中的一个是否保证在 float 上为真?

javascript - PhpStorm/WebStorm 和标准 linting 错误

c++ - 如何在C++中实现简单的JSON解析器(不能使用外部库)

c++ - 使用 h264 流创建 mkv 容器时数据无效,因为 extradata 为空

c++ - 我在 C++11 标准中缺少什么?

c++ - 重载运算符 == & !=