当前位置: 首页 > wzjs >正文

网站建设方为客户提供使用说明书微信营销软件手机版

网站建设方为客户提供使用说明书,微信营销软件手机版,泰安公司网站建设价格查询,广州手机网站建设公司排名目录 一、背景知识二、使用方法(一)编译静态库(二)编译动态库(三)在主程序中调用库 三、总结 一、背景知识 在C/C开发中,库(Library)是预先编译好的代码集合&#xff0c…

目录

    • 一、背景知识
    • 二、使用方法
      • (一)编译静态库
      • (二)编译动态库
      • (三)在主程序中调用库
    • 三、总结

一、背景知识

在C/C++开发中,库(Library)是预先编译好的代码集合,可供多个程序使用。根据链接方式不同,库分为静态库和动态库。静态库在编译时将代码直接链接到可执行文件中,可执行文件体积较大,但运行时无需额外库文件;动态库在运行时加载,可执行文件体积小,便于更新和共享,但依赖外部库文件存在。

CMake是一个跨平台的自动化构建工具,通过编写CMakeLists.txt文件来定义项目的构建规则,可以方便地编译静态库、动态库以及主程序,并处理它们之间的依赖关系。

二、使用方法

(一)编译静态库

  1. 创建项目目录结构

math作为库项目, app作为测试项目

文章配图

  1. 编写math目录下的文件
  • my_math.cpp
#include "my_math.h"int add(int a, int b) {return a + b;
}int subtract(int a, int b) {return a - b;
}
  • my_math.h

#ifndef MATH_FUNCTIONS_H#define MATH_FUNCTIONS_Hint add(int a, int b);int subtract(int a, int b);#endif
  • math/CMakeLists.txt

# 设置这个目录项目的最低版本cmake_minimum_required(VERSION 3.10)# 定义一个静态库 mathadd_library(math STATIC my_math.cpp)# 设置头文件公共目录,方便其他模块包含target_include_directories(math PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
  1. 编写app目录下的文件
  • main.c

#include <stdio.h>#include "../math/my_math.h"int main() {int sum = add(1, 2);int difference = subtract(4, 2);printf("Sum: %d\n", sum);printf("Difference: %d\n", difference);return 0;
}
  • app/CMakeLists.txt

cmake_minimum_required(VERSION 3.10)# 定义一个可执行文件add_executable(DemoApp main.cpp)# 链接 math 静态库target_link_libraries(DemoApp PRIVATE math)
  1. 编写项目根目录下的CMakeLists.txt

cmake_minimum_required(VERSION 3.10)project(DemoProject VERSION 1.0)# 添加 math 目录add_subdirectory(math)# 添加 app 目录add_subdirectory(app)
  1. 构建项目
    在项目根目录下打开终端,执行以下命令:

mkdir buildcd buildcmake ..cmake --build .

(二)编译动态库

  1. 创建项目目录结构同静态库部分。

  2. 修改math目录下的math/CMakeLists.txt


cmake_minimum_required(VERSION 3.10)# 定义一个动态库 mathadd_library(math SHARED my_math.cpp)# 设置动态库的公共头文件位置target_include_directories(math PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
  1. app目录下的文件无需修改。

  2. 项目根目录下的CMakeLists.txt无需修改。

  3. 构建项目同静态库部分。

构建完成后,运行生成的DemoApp前,确保动态库对于可执行文件是可见的。在Linux或macOS上,可能需要设置环境变量LD_LIBRARY_PATH或DYLD_LIBRARY_PATH。

(三)在主程序中调用库

在主程序中调用库中的函数,只需包含相应的头文件,并使用函数即可。如上述main.cpp中的代码,通过包含my_math.h头文件,就可以使用add和subtract函数。

三、总结

通过CMake,我们可以方便地编译静态库和动态库,并在主程序中调用。静态库适合代码量不大且需要保证代码安全的场景,动态库适合代码量大且需要共享的场景。在实际项目中,根据需求选择合适的库类型,并合理组织项目结构,可以提高代码的可维护性和可扩展性。

http://www.dtcms.com/wzjs/375114.html

相关文章:

  • 国家企业信用系统杭州网络优化公司排名
  • 有路由器做网站如何获取热搜关键词
  • 济南比较好的网站建设公司痘痘怎么去除有效果
  • 怎么做网站维护宣传深圳网络推广哪家比较好
  • 怎么做网站生意线上宣传渠道有哪些
  • 个人域名用来做淘宝客网站引流推广
  • 龙湖镇华南城网站建设百度竞价排名是什么意思
  • 卫浴毛巾架网站建设seo教程seo教程
  • 有哪些做婚品的网站郑州网络推广效果
  • 苏州手机网站设计站长工具友链查询
  • 小型网站开发时间周期深圳网站开发制作
  • 芜湖做网站的客户百度指数大数据分享平台
  • 网站栏目优化指数计算器
  • 濮阳门户网站开发百度推广客户端下载安装
  • ev123建站抖音推广平台
  • 网站建设及推广人员网络推广营销方式
  • 代码查询网站网页制作培训网站
  • 沈阳 网站建设邀请注册推广赚钱的app
  • 鄂州网红打卡地黄山搜索引擎优化
  • 哪些网站会盗取广州百度推广优化排名
  • 深圳ui设计公司优化网站关键词排名
  • 网站建设服务描述淘宝搜索关键词查询工具
  • 怎么用源代码复制网站如何seo网站推广
  • 安卓手机建设网站seowhy培训
  • 百度云服务器做asp网站湖南网站设计外包费用
  • 小红书推广方法seo刷排名公司
  • 在哪查看网站被收录的情况建设企业营销型网站
  • 鞍山网站制作公司广州seo和网络推广
  • 做go分析的网站南昌关键词优化软件
  • 母婴网站源码dede济南seo官网优化