创建目录
mkdir src inc
inc 中创建文件 test.h
src 中创建文件 test.cpp
#ifndef __TEST_H
#define __TEST_H
int test_log();
#endif
#include<iostream>
#include"test.h"
int test_log()
{
std::cout<<"This is test_log."<<std::endl;
return 0;
}
使用头文件和源文件
添加头文件路径
include_directories(${PROJECT_SOURCE_DIR}/inc)
指定源文件及其位置
set(src_dir ${PROJECT_SOURCE_DIR}/src)
file(GLOB src_codes ${src_dir}/*.cpp)
add_executable(${demo_basename} ${demo} ${src_codes})
总的 cmake 文件
cmake_minimum_required(VERSION 3.5 FATAL_ERROR)
project(hello-world-01 LANGUAGES CXX)
include_directories(${PROJECT_SOURCE_DIR}/inc)
set(src_dir ${PROJECT_SOURCE_DIR}/src)
file(GLOB src_codes ${src_dir}/*.cpp)
set(demo_dir ${PROJECT_SOURCE_DIR}/demo)
file(GLOB demo_codes ${demo_dir}/*.cpp)
foreach(demo ${demo_codes})
string(REGEX MATCH "[^/]+$" demo_file ${demo})
string(REPLACE ".cpp" "" demo_basename ${demo_file})
add_executable(${demo_basename} ${demo} ${src_codes})
endforeach()
修改 cmd_dir.cpp
#include<iostream>
#include<string>
#include "test.h"
int main()
{
std::cout<<"This is cmd_dir."<<std::endl;
test_log();
return 0;
}

文章介绍了如何创建C++项目的目录结构,包括src和inc目录,以及如何在CMakeLists.txt中配置头文件路径、指定源文件并编译。示例中展示了test.h和test.cpp的编写,以及主文件cmd_dir.cpp如何包含并调用test.h中的函数。
1294

被折叠的 条评论
为什么被折叠?



