CLion 内置宏
官方文档地址: https://www.jetbrains.com/help/clion/built-in-macros.html
通用路径相关宏
宏名称 含义说明 示例 $WORKSPACE_DIR$
当前项目所属的工作区根目录路径。 /home/user/workspace
$PROJECT_DIR$
当前项目的根目录路径。 /home/user/workspace/myProject
$USER_HOME$
用户的主目录路径。 /home/user
$FILE$
当前文件的绝对路径,包括扩展名。 /home/user/workspace/myProject/src/main.cpp
$FilePath$
当前文件的完整路径(同 $FILE$
)。 /home/user/workspace/myProject/src/main.cpp
$FileName$
当前文件的完整名称(含所有扩展名)。 main.cpp
$FileExt$
当前文件的扩展名。 cpp
$FileDir$
当前文件所在目录的绝对路径。 /home/user/projects/myProject/src
$FileDirName$
当前文件所在目录的名称(不含路径)。 src
$FileParentDir$
当前文件所在目录的上一级目录名称。 myProject
路径相对化宏
宏名称 含义说明 示例 $FileDirPathFromParent(dir)$
当前文件所在目录相对于指定父目录 dir
的路径。 假设 dir=/home/user/workspace/myProject
, 结果为 src
$FileDirRelativeToProjectRoot$
当前文件所在目录相对于项目根目录的路径。 src
$FilePathRelativeToProjectRoot$
当前文件的路径相对于项目根目录的路径。 src/main.cpp
$FileRelativePath$
当前文件相对于模块内容根目录的路径。 src/main.cpp
$FileRelativeDir$
当前文件所在目录相对于模块内容根目录的路径。 src
$FileDirRelativeToSourcepath$
当前文件所在目录相对于源码路径的路径。 假设源码路径为 src
, 结果为空字符串 ""
$FilePathRelativeToSourcepath$
当前文件路径相对于源码路径的路径。 main.cpp
$UnixSeparators(path)$
将给定路径中的分隔符统一转换为 /
格式。 $UnixSeparators(C:\foo\bar)
→ /foo/bar