gpt4 book ai didi

c - 编译库与仅在应用程序中使用其源文件之间的区别

转载 作者:行者123 更新时间:2023-12-03 20:57:20 25 4
gpt4 key购买 nike

我正在使用 C 语言使用 MCU,并且我有一个已经制作好的库,我想用它来构建我自己的应用程序。区别在哪里:

  • 在 .lib 中编译库文件,然后将我的应用程序(使用该库)链接到该 .lib,并将其编译到我的目标
  • 只创建一个项目,在其中导入所有文件(.c 和 .h)并将其编译到我的目标

  • 这是一个非常基本和普遍的问题,但我想澄清一下..

    最佳答案

    编辑:答案是假设您从软件工程的角度提出问题。

    将库文件与应用程序代码分开是一种最佳实践方法。除了库文件和应用程序的静态和动态链接之外,您的库文件应该包含逻辑/语义相关的代码。这种结构将您的代码“组件化”为可重用的软件片段,这些软件片段可以输入到其他库和应用程序中。这种做法促进了松散耦合,是软件设计和实现的首选方法。

    使用单个项目方法,您仍将拥有在需要时编译的相同目标文件(如在单独的库方法中)。只有那些被改变的文件才会相应地重新生成它们的目标文件。但是,您最终仍会得到一个全新的库/应用程序文件。

    作为使用第一种方法(编号 1)的示例好处,您可以分层一个单独的“测试”库来对您的独立库进行单元测试,而不必重新包含或重新构建您的独立库。在对测试库进行修改(例如,添加、修改、删除单元测试)时,您可以使用独立库。

    希望这可以帮助!

    关于c - 编译库与仅在应用程序中使用其源文件之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5010329/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com