Nic*_*ton 4 c++ header shared-libraries
当我创建共享库时,我在库源的根目录中有一个头文件(但没有文件扩展名),名称与库相同.
例如,如果我的库名为libirock.so,那么我在项目根目录中有一个名为irock的文件.此文件将包含库中所有最重要的标头,因此在实现库时,您只需使用此包含行:
#include <irock> // Instead of <irock.h>
Run Code Online (Sandbox Code Playgroud)
当我看到类似于的编译器警告时,我明白了这个想法:
#include <string.h> is obsolete, use #include <string> instead
Run Code Online (Sandbox Code Playgroud)
两个问题:
行动方针
谢谢你的回答!从答案中,我决定:
<irock.h>而不是<irock>.标准中没有规定有关文件名扩展的“允许”、“禁止”或“最佳实践”。
使用您喜欢的任何形式。在某些平台上,为注册类型提供文件扩展名有一个便利因素。
就其价值而言<string.h>,它们<string>是完全不同的标头。C++ 命名空间的等效项<string.h>实际上是<cstring>.