【发布时间】:2012-03-24 15:09:14
【问题描述】:
当我在不区分大小写的文件系统上使用 C++ 开发时,我会错过诸如
之类的问题#include "File.h"
如果在磁盘上它实际上是file.h。
仅当我最终尝试在区分大小写的文件系统上编译代码时才会出现此问题。
如何在不区分大小写的文件系统(例如 OSX 的默认设置)上模拟区分大小写?
编辑: 我正在寻找一种自动化解决方案,我现在和将来都可以通过“按一下按钮”运行它。
在 C++ 中严格按照类的确切名称(包括大小写)命名文件似乎也是一种非常好的风格。所以 SuperDuperClass 会出现在 SuperDuperClass.h 中。需要小写文件名的解决方案不适合。
【问题讨论】:
-
您是否需要模拟区分大小写,或者是否足以过滤您的来源并在必要时转换为小写?
-
可能最好在大小写不匹配时中断构建。您希望您的代码独立于文件系统进行编译。
-
@AndrewWhite 是的,绝对是。即使我在一个不区分大小写的系统上,我确实在寻找一种方法来中断构建。
-
@AdamLiss 我确实想模拟区分大小写。
-
Hpfs+ 默认不区分大小写??