Visual Studio中的私有和公共头文件(基于CMake的项目)

时间:2018-12-03 09:01:10

标签: cmake visual-studio-2017

请考虑以下CMakeLists.txt

add_library(mylib
    src/mylib.cpp
    src/mylibprivate.h
    header/mylib.h
)

target_include_directories(mylib
    INTERFACE header
    PRIVATE src
)

所以我有一个私有头和一个公共头。

据我所知,Visual Studio在解决方案资源管理器中没有私有和公共头的概念。每个“项目”只有一个“源文件”和“头文件”文件夹。

实施该概念的最佳做法是什么?

1 个答案:

答案 0 :(得分:0)

“源文件”和“头文件”是cmake创建的默认组。要将特定文件添加到新组,请使用source_group(),例如source_group(private src/mylibprivate.h)。另外,如果您没有在项目中包含src/mylibprivate.h,则Visual Studio会将其添加到外部头文件所在的文件夹(stdio.h所在的文件夹)下。