如何从代码本身获取c ++源代码的父目录(以及更高级别的所有目录)的地址?即从源创建的程序可以在不指定它们的情况下访问所述目录。
答案 0 :(得分:4)
您可以使用__FILE__
宏来获取源文件的路径。然后通过应用字符串操作技术,您只需获取父目录。
更多信息here。
答案 1 :(得分:1)
有些编译器支持__FILE__
macro,您可以使用源文件的完整路径来获取字符文字。
如果父文件名可用,则可以从该文字中提取父目录名称。
但实际上你这样做的用例是什么?
我对您的部署策略有些怀疑,可能有问题。
如果您依赖源目录结构,例如加载进一步的资源文件,这些文件对于潜在的目标环境是不可移植的,只能安装您的可执行工件。您可以重新考虑部署和配置策略。