gpt4 book ai didi

c++ - 合并两个 C++ 包

转载 作者:太空狗 更新时间:2023-10-29 23:08:15 25 4
gpt4 key购买 nike

我有两个 C++ 包 A 和 B,其中 A 依赖于 B。我想通过让 A 吞下 B 代码的最小部分来打破这种依赖性,这样 B 就可以完全抛弃。

有没有人对我如何分析包 A 以准确找出我需要从 B 引入的类/函数等有什么建议?

编辑:我简单地删除了包 B 并经历了(很多)编译 A 的循环,从 B 复制文件,相应地更新了 Makefile.am。现在我很确定我已经用比需要的更多的东西使包 A 膨胀了。我如何找到 A` 代码中从未在由此产生的可执行文件/库中使用的部分?

最佳答案

我认为可以采取三种行动方式:

  1. 真正只导入需要的东西:撤消你所做的,然后再做一遍,但这次不要从 B 复制整个文件,而只是复制编译器告诉你缺少的单个函数。

  2. 根据您目前的情况,让一些工具为您分析代码(参见 Looking for a free source code analyzer (Function depedency tree)Looking for a free source code analyzer (Function depedency tree) ),或者使用所有 A 编写大量代码并运行代码覆盖率分析。

  3. 注释掉您从 B 复制的源代码中的函数(而不是标题中的函数)。现在您的链接器将提示缺少任何功能。取消注释这些,删除其余部分,包括它们在标题中的声明。这是与第一种方法相反的方法。

关于c++ - 合并两个 C++ 包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10339074/

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