2011-01-27 4 views
1

C++ 전 처리기를 사용하여 파일 경로를 처리 할 수 ​​있습니까?C++ 프리 프로세서 경로 루트

는 내가 원하는이 GETROOT(__FILE__) 이 파일의 경로는 윈도우 XP가

+0

이것은 http://stackoverflow.com/questions/1591873/how-do-i-write-a-cpp-dir-macro-similar-to-file의 사본처럼 보입니다. 개인적으로 makefile 접근 방법을 사용합니다. 하지만 그것은 빌드 시스템에 따라 달라질 것입니다. – Mumbles

+0

@David Ashmore 왜 그런 말을 할 수 있는지는 알지만 질문은 다른 환경에 있으며 두 경우 모두 해결책이 없습니다. – DonkeyMaster

답변

0

아니, 그것의에 내가 mcpp을 사용하고 \\myserver\myshare\folder\folder\file.txt

같은 것을 가정하면 \\myserver\myshare\

로 확대 적어도 표준적인 방식은 아닙니다. 나는 세계 어느 곳에도 컴파일러가 없다는 것을 확실히 말할 수는 없지만, 그렇게 할 것 같지는 않습니다.

런타임시 수행 할 수없는 유스 케이스는 무엇입니까?

+0

전처리기를 사용하여 DSL 용 파일을 마사지하므로 출력이 C++가 아닙니다. – DonkeyMaster

1

는 전처리 GCC에 약간 다른 동작, 컴파일러에 따라 다름/마이크로 소프트 등 없다 그렇게 할 수있는 방법을 표준 - 준수 ..

Windows의 빌드 환경 변수를 사용하려고 할 수도 있습니다. Visual Studio는 이러한 값 ($ (SolutionDir) 등)을 선행 처리기 컨텍스트에 노출 할 수 있습니다. ROOT_PATH = "$ (SolutionDir)"(프로젝트 설정에서 C/C++ -> 전 처리기)와 같은 전 처리기 값을 추가하십시오.

관련 문제