c++ - 在库的文件名中使用加号 ( '+' ) 是不是很糟糕?

标签 c++ static-libraries filenames

我想知道你们对我正在处理的库的文件夹和文件名中使用 + 字符的看法。假设我的 lib 被称为 lib++,我应该使用“lib++”命名我的文件和文件夹,还是应该坚持使用更安全的名称,如“libpp”(加号)或“libxx”。

UnitTest++ 在其文件名中使用 + 字符。

最佳答案

如果您希望您的库广泛移植到其他(尤其是较旧的)操作系统,那么我会避免使用“+”,并坚持使用 A-Z,a-z,0-9,_

需要考虑的两个问题:-

  • 操作系统本身是否允许该字符? http://en.wikipedia.org/wiki/Filename#Comparison_of_filename_limitations
  • 该语言是否允许导入(对于 C++,包括)文件名中的字符?

  • 例如,对于 C++ 库:您的操作系统应该能够拥有名为 lib++.h 的文件。和 lib++.lib在磁盘上 OK - 但你必须偏离标题保护命名的标准做法......
    in lib++.h:-
    
    #ifndef LIB++_H
    #define LIB++_H
    
    ...
    #endif
    

    我想这会以泪水结束...

    (实际上,我想得越多,潜在的故障点就越多:您的版本控制软件、IDE、文档生成器,实际上几乎所有您使用的查看文件名的工具。现在,您可能很幸运这些都不会对您或任何试图使用您的图书馆的人造成任何问题,但这不是我想打赌的方式。)

    关于c++ - 在库的文件名中使用加号 ( '+' ) 是不是很糟糕?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13434024/

    相关文章:

    c++ - QT C++ 读取每行同时包含 int 和 QString 的文件

    linux - 如何将从linux生成的静态库.a链接到windows c项目

    excel - 在vba中设置文件路径和文件名

    windows - 为什么一切都命名为win32?

    c++ - 包含库是行不通的

    c++ - 查找 x 轴上最大非重叠线数的算法

    c++ - iostream 不打印到第二个源类中的终端 (c++)

    iphone - 从 ARC 静态库访问 @property 时,ARC 应用程序崩溃

    iphone - 如何构建通用ios静态库

    javascript - Dropzone.js - 使用 accept 检查文件名长度