2011-01-27 44 views
1

是否可以使用C++预处理器处理文件路径?C++预处理器路径根

我要的是这个 GETROOT(__FILE__) 扩大到 \\myserver\myshare\

假设该文件路径是一样的东西\\myserver\myshare\folder\folder\file.txt

我使用mcpp在Windows XP

+0

这似乎是一个重复的http://stackoverflow.com/questions/1591873/how-do-i-write-a-cpp-dir-macro-similar-to-file我个人会使用makefile的方法,但这取决于你的构建系统 – Mumbles 2011-01-27 09:09:04

+0

@David Ashmore我可以看到你为什么这么说,但问题是在不同的环境中,并且在这两种情况下,都没有找到解决方案。 – DonkeyMaster 2011-01-28 08:41:24

回答

0

不,不是,至少不是以标准的方式。我不能肯定地说世界上没有编译器这样做,但似乎不太可能。

什么是用例,这意味着你不能在运行时做到这一点?

1

取决于编译器,预处理器行为上GCC略有不同/微软等 没有符合标准的方式来做到这一点..

在Windows上,你可以尝试使用的编译环境变量。 Visual Studio可以将这些值($(SolutionDir)等)展示给预处理器上下文。只需添加一个预处理器值,如ROOT_PATH =“$(SolutionDir)”(C/C++ - >项目设置中的预处理器)。