我正在与某人争论,他确定 C++ 标准库(如 algorithm
、memory
、string
等)使用用于执行某些操作的 Windows API header 。
是不是这样? 我知道所有 Windows PE 都包含来自 WinAPI 的 native DLL,但我不确定标准库是否完全依赖于编译器/操作系统。
最佳答案
C++标准库是一组#include <>
当插入到 C++ 程序中时,具有标准定义的效果的指令。
从技术上讲,它们根本不需要是文件 -- 都是 #include <blah>
标准强制执行的指令可以改为编译器内部函数,用于修改指令后程序的行为。
在实践中,它们通常是纯 C++ 头文件代码、使用编译器内在函数或平台特定细节的头文件代码以及库的混合体,其中库是在操作系统特定的、硬件特定的混合体中实现的, 或者在 C/C++ 中。
C++ 标准库的某些部分无法用 C++ 实现。
关于c++ - C++ 标准库在任何时候都包含每个平台的 native 头文件吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36531978/