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