我们的代码使用
我们的意图是所有的
__FILE__
在日志文件中打印代码位置。我们的意图是所有的
__FILE__
实例都只打印文件名,不包括路径。
然而,我们刚刚注意到,源代码(.cpp
文件)正确地只打印了文件名,但头文件(.h
文件)打印了完整路径。这暴露了我们的构建服务器路径,对客户的安装造成了困扰。
我已经研究了编译选项/FC
(完整路径名)及其与/ZI
和/Zi
(调试信息生成)编译选项的关系。简而言之,/ZI
意味着/FC
。我们目前正在使用/Zi
,但我们没有使用/ZI
或/FC
,所以应该没问题。
我们使用了项目范围的预编译头(PCH),但PCH中包含的头文件都没有使用__FILE__
,所以这似乎是无关紧要的。
这里发生了什么?
我是否触发了潜在的编译选项?
有没有人知道一种不涉及运行时字符串操作函数的解决方法?