gpt4 book ai didi

c++ - 在 C++ 中使用 #include 和 #include 的区别

转载 作者:IT老高 更新时间:2023-10-28 12:50:06 26 4
gpt4 key购买 nike

使用 #include<filename> and #include<filename.h 有什么区别? > 在 C++ ?两者都用哪一个,为什么用?

最佳答案

C++ only include-files not found in the C standard never used filename.h 。自从第一个 C++ 标准问世(1998 年)以来,他们就使用 filename 作为自己的 header 。

由 C 标准继承的文件变为 cfilename 而不是 filename.h。像 filename.h 这样继承使用的 C 文件已被弃用,但仍是 C++ 标准的一部分。

不同之处在于,在 C++ 中未定义为宏的名称位于命名空间 std:: 中的 cfilename 中,而名称位于 filename.h 在全局命名空间范围内。所以你会在 stddef.h 中找到 ::size_t,在 cstddef 中找到 std::size_t。两者都是标准 C++,但不推荐使用::size_t(参见 C++ 标准的附录 D)。

这就是区别。

为什么要使用`filename.h`?

  • 与 C 编译器的兼容性
  • 与非常古老的 C++ 编译器的兼容性

为什么要使用`cfilename`?

  • 名称在命名空间 std:: 中。不再有名称冲突。
  • 新的 C++ 功能(例如浮点、长整数的重载数学函数)
  • C 兼容性 header (filename.h) 将来可能会消失。

关于c++ - 在 C++ 中使用 #include<filename> 和 #include<filename.h> 的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/301586/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com