第一:private, public, protected 访问标号的访问范围。 private:只能由1.该类中的函数、2.其友元函数访问。 不能被任何其他访问,该类的对象也不能访问。 protected:可以被1.该类中的函数、2.子类的函数、以及3.其友元函数访问。 但不能被该类的对象访问。 public:可以被1.该类中的函数、2.子类的函数、3....
PUBLIC:公开的。PUBLIC = PRIVATE + INTERFACE。生成 libhello-world.so 时,在 hello_world.c 和 hello_world.h 中都包含了 hello.h。并且 main.c 中也需要使用 libhello.so 提供的功能。那么在 hello-world/CMakeLists.txt 中应该写入: target_link_libraries(hello-world PUBLIC hello)target_include_direc...
<INTERFACE|PUBLIC|PRIVATE>:用于指定这些路径的可见性。INTERFACE表示这些路径将被导出给依赖于当前目标的其他目标,PUBLIC表示这些路径将被导出给当前目标和依赖于当前目标的其他目标,PRIVATE表示这些路径仅在当前目标中可见。 items:要添加的头文件路径。 例如,假设我们有一个名为myapp的可执行文件目标,并且需要包含...
{PROJECT_NAME} PRIVATE ${PRJ_INCLUDE_DIRS} ) target_link_libraries( ${PROJECT_NAME} PRIVATE ${PRJ_LIBRARIES} ) target_compile_features ( ${PROJECT_NAME} PRIVATE ${PRJ_COMPILE_FEATURES} ) get_target_property(include_dirs ${PROJECT_NAME} INCLUDE_DIRECTORIES) foreach(dir ${include_dirs}) ...