网站开发职业岗位建站主机

张小明 2026/1/17 4:05:25
网站开发职业岗位,建站主机,品牌策划公司属于什么行业,云南官网制作CMake 构建实例#xff1a;从简单到复杂实战项目 下面通过4个逐步升级的实际项目实例#xff0c;展示 CMake 的完整构建流程、目录结构和 CMakeLists.txt 编写。所有实例都遵循现代 CMake 最佳实践#xff08;CMake 3.15#xff0c;target-centric 写法#xff0c;源码外…CMake 构建实例从简单到复杂实战项目下面通过4个逐步升级的实际项目实例展示 CMake 的完整构建流程、目录结构和CMakeLists.txt编写。所有实例都遵循现代 CMake 最佳实践CMake 3.15target-centric 写法源码外构建。实例1单文件 Hello World最简单入门目录结构hello/ ├── CMakeLists.txt └── main.cppmain.cpp#includeiostreamintmain(){std::coutHello, CMake World!std::endl;return0;}CMakeLists.txtcmake_minimum_required(VERSION 3.15) project(HelloWorld LANGUAGES CXX) add_executable(${PROJECT_NAME} main.cpp) target_compile_features(${PROJECT_NAME} PRIVATE cxx_std_17)构建命令mkdirbuildcdbuild cmake..-DCMAKE_BUILD_TYPERelease cmake --build../HelloWorld实例2多文件 头文件目录典型小型项目目录结构math_app/ ├── CMakeLists.txt ├── main.cpp ├── include/ │ └── math_utils.h └── src/ └── math_utils.cppmath_utils.h#pragmaoncedoubleadd(doublea,doubleb);doublemultiply(doublea,doubleb);math_utils.cpp#includemath_utils.hdoubleadd(doublea,doubleb){returnab;}doublemultiply(doublea,doubleb){returna*b;}main.cpp#includeiostream#includemath_utils.hintmain(){std::cout3 5 add(3,5)std::endl;std::cout4 * 7 multiply(4,7)std::endl;}CMakeLists.txtcmake_minimum_required(VERSION 3.15) project(MathApp LANGUAGES CXX) add_executable(${PROJECT_NAME} main.cpp src/math_utils.cpp ) target_include_directories(${PROJECT_NAME} PRIVATE include) target_compile_features(${PROJECT_NAME} PRIVATE cxx_std_17)构建同上实例3分离库 多目录中型项目推荐结构目录结构calculator/ ├── CMakeLists.txt # 根目录 ├── app/ │ ├── CMakeLists.txt │ └── main.cpp ├── lib/ │ ├── CMakeLists.txt │ ├── include/calculator/ │ │ └── core.h │ └── src/ │ └── core.cpp └── tests/ # 可选后续加测试lib/include/calculator/core.h#pragmaoncenamespacecalc{doubleadd(doublea,doubleb);doublesubtract(doublea,doubleb);}lib/src/core.cpp#includecalculator/core.hnamespacecalc{doubleadd(doublea,doubleb){returnab;}doublesubtract(doublea,doubleb){returna-b;}}app/main.cpp#includeiostream#includecalculator/core.hintmain(){std::cout10 - 4 calc::subtract(10,4)std::endl;return0;}lib/CMakeLists.txt库add_library(calc_core STATIC src/core.cpp ) target_include_directories(calc_core PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/include ) target_compile_features(calc_core PUBLIC cxx_std_17)app/CMakeLists.txt可执行add_executable(calculator_app main.cpp) target_link_libraries(calculator_app PRIVATE calc_core)根 CMakeLists.txtcmake_minimum_required(VERSION 3.15) project(Calculator LANGUAGES CXX) add_subdirectory(lib) add_subdirectory(app)构建命令mkdirbuildcdbuild cmake..-DCMAKE_BUILD_TYPERelease cmake --build../app/calculator_app实例4完整项目带静态/动态库选项 安装规则 测试扩展实例3添加可选生成共享库安装规则make install简单单元测试根 CMakeLists.txt增强版cmake_minimum_required(VERSION 3.15) project(Calculator LANGUAGES CXX) # 选项是否构建共享库默认静态 option(BUILD_SHARED_LIBS Build shared libraries OFF) add_subdirectory(lib) add_subdirectory(app) add_subdirectory(tests) # 可选 # 安装规则 install(TARGETS calculator_app DESTINATION bin ) install(TARGETS calc_core DESTINATION lib ) install(DIRECTORY lib/include/ DESTINATION include )tests/CMakeLists.txt使用 CMake 自带测试find_package(GTest QUIET) if(GTest_FOUND) add_executable(calc_test test_core.cpp) target_link_libraries(calc_test PRIVATE calc_core GTest::gtest_main) add_test(NAME CalcTest COMMAND calc_test) else() message(WARNING Google Test not found, skipping tests) endif()构建 安装 测试mkdirbuildcdbuild cmake..-DCMAKE_BUILD_TYPERelease -DBUILD_SHARED_LIBSON cmake --build.ctest.# 运行测试如果有 GTestsudocmake --install.--prefix /usr/local# 安装到系统总结推荐项目模板直接复制使用myproject/ ├── CMakeLists.txt ├── cmake/ # 可选自定义模块 ├── app/ │ ├── CMakeLists.txt │ └── main.cpp ├── lib/ │ ├── CMakeLists.txt │ ├── include/myproject/ │ └── src/ ├── tests/ │ └── CMakeLists.txt └── third_party/ # 第三方库如 vcpkg/conan 管理这些实例覆盖了从单文件到中大型项目的全部常见需求。你可以直接复制修改使用。如果你想看特定场景的实例如集成 Boost/Qt/OpenCV、交叉编译 Android/iOS、使用 vcpkg/Conan 包管理、生成 deb/rpm 包等告诉我我立刻给出完整可运行的例子
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

重庆旅游网站做网站延期交付了

还在为通用语音识别模型无法准确识别专业术语而困扰?特定行业的长尾样本识别问题一直是技术落地的痛点。本指南将带你深度掌握SenseVoice语音识别微调的完整流程,让模型真正理解你的业务场景! 【免费下载链接】SenseVoice Multilingual Voice…

张小明 2026/1/11 4:33:23 网站建设

深圳网站维护页面设计济南建设网官网首页

第一章:Open-AutoGLM启动失败问题概述Open-AutoGLM 是一款基于 GLM 架构的开源自动化语言模型工具,广泛应用于智能问答、代码生成与自然语言理解任务。然而,在实际部署过程中,部分用户反馈其在初始化阶段频繁出现启动失败的问题&a…

张小明 2026/1/11 5:33:53 网站建设

做网站工作都包括什么做低首付的汽车网站有哪些

网络操作与文件搜索全解析 在网络环境中,我们常常需要查看网络路由表、传输文件、安全地与远程主机通信以及搜索文件。下面将详细介绍这些操作及其相关工具。 查看网络路由表 使用 netstat 命令的 -r 选项可以显示内核的网络路由表,它展示了网络如何配置以在不同网络之…

张小明 2026/1/11 8:47:22 网站建设

网站建设与推广方案岚皋网站建设

TVBoxOSC完整使用指南:从零开始掌握电视盒子应用 【免费下载链接】TVBoxOSC TVBoxOSC - 一个基于第三方项目的代码库,用于电视盒子的控制和管理。 项目地址: https://gitcode.com/GitHub_Trending/tv/TVBoxOSC TVBoxOSC是一个功能强大的开源电视盒…

张小明 2026/1/11 10:49:53 网站建设

织梦建站要多少钱全屋定制品牌推荐

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 创建一个基于Keil MDK的智能辅助开发工具,集成AI代码补全、语法检查、错误预测功能。要求:1.支持STM32系列芯片的C语言自动补全 2.实时检测常见嵌入式编程错…

张小明 2026/1/11 16:55:51 网站建设

泰安住房和城乡建设局网站管理咨询公司收费

博主介绍:✌ 专注于Java,python,✌关注✌私信我✌具体的问题,我会尽力帮助你。一、研究目的本研究旨在设计并实现一个基于微信小程序的校园电子图书馆系统,以满足现代校园信息化背景下图书馆服务的新需求。具体研究目的如下: 首先…

张小明 2026/1/11 15:28:14 网站建设