【Linux学习笔记25】教你写插件式高级开发程序(巧用静态库与动态库)

本文介绍了如何在Linux环境下利用静态库和动态库进行插件式开发,详细阐述了静态库与动态库的区别,动态链接动态库的好处,并通过实例演示了静态库和动态库的创建及使用,强调了动态库在提升代码续航能力和层次性管理上的优势。
摘要由CSDN通过智能技术生成

引言

本章有涉及到一些工程文件的组织方面的内容,由于之前已经写过类似的笔记,这次就不再多啰嗦了,如果有朋友有兴趣想去补充一下这方面知识,可以参考本人之前的文章- - 【C语言基础补充7】使用预处理让你的代码不再臃肿
在做项目开发的过程中,每个程序员都应该具备一个长远的思想,要让自己的代码拥有更加强的续航能力以及更强的适应能力,那么这一篇博客可能能够帮到你!

原理

  1. 不要将所有函数,头文件都放在main.c文件中。我们可以将头文件、函数定义等拆分为一个头文件存放在include文件夹,功能函数可以做成库lib,放到lib文件夹,有能力者还可以加入makefile来管理整个工程文件。
  2. 按照功能函数的需求,将功能函数做成对应的动态库,或者静态库。
  3. 在main.c函数中,通过使用dlopen等语句,调用库来实现功能。
  4. 用户执行main可执行文件的时候,只需要输入参数,即可调用不同功能的库,实现插件式管理程序。

静态库与动态库的区别

下面以类比书店与图书馆的方式,给大家详细说明一下动态库与静态库的区别:
在这里插入图片描述

静态库:

生成命令:

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值