std::命名空间的源代码
Source code of std:: namespace
我想使用 std::string
命名空间 + 成员,但我不希望我的文件的大小增加 #include <string>
文件的大小。
有没有什么地方可以找到 std:: 命名空间的源代码,这样我就可以提取字符串成员并将其放入我的源代码中,这样我的二进制文件大小就不会增加?
请给我一些建议,谢谢!
如果在 Linux 上使用 GCC(通过 g++
),它是免费软件并且可以使用标准库的源代码。所以你可以研究它的 <string>
header(其中一些可能会使用像内置函数或属性这样的编译器魔法)。
请注意,如果您 #include <string>
并要求编译器进行优化(使用 -Os
来优化大小,或使用 -O2
来优化速度),很可能不需要的函数不会进来。最后,通常 libstdc++
是动态链接的(作为共享 object)所以不会在每个程序中消耗 space(但在多个进程之间共享)
我想使用 std::string
命名空间 + 成员,但我不希望我的文件的大小增加 #include <string>
文件的大小。
有没有什么地方可以找到 std:: 命名空间的源代码,这样我就可以提取字符串成员并将其放入我的源代码中,这样我的二进制文件大小就不会增加?
请给我一些建议,谢谢!
如果在 Linux 上使用 GCC(通过 g++
),它是免费软件并且可以使用标准库的源代码。所以你可以研究它的 <string>
header(其中一些可能会使用像内置函数或属性这样的编译器魔法)。
请注意,如果您 #include <string>
并要求编译器进行优化(使用 -Os
来优化大小,或使用 -O2
来优化速度),很可能不需要的函数不会进来。最后,通常 libstdc++
是动态链接的(作为共享 object)所以不会在每个程序中消耗 space(但在多个进程之间共享)