gpt4 book ai didi

delphi - 如何处理第三方库中的警告/提示?

转载 作者:行者123 更新时间:2023-12-03 15:37:53 27 4
gpt4 key购买 nike

我们使用 FastReport 来生成报告。事实上,我们为访问源代码付费。

我们目前使用的是 FastReport 的最新稳定版本。虽然它对于我们的生产来说足够稳定,但每当我编译时,我都会看到以下内容:

[dcc32 Hint] fs_iinirtti.pas(369): H2443 Inline function 'TList.Remove' has not been expanded because unit 'System.Types' is not specified in USES list
[dcc32 Hint] fs_iclassesrtti.pas(656): H2443 Inline function 'TList.Remove' has not been expanded because unit 'System.Types' is not specified in USES list
[dcc32 Hint] fs_iclassesrtti.pas(1014): H2443 Inline function 'TList.Remove' has not been expanded because unit 'System.Types' is not specified in USES list
[dcc32 Hint] fs_idialogsrtti.pas(159): H2443 Inline function 'TList.Remove' has not been expanded because unit 'System.Types' is not specified in USES list
[dcc32 Hint] fs_igraphicsrtti.pas(252): H2443 Inline function 'TList.Remove' has not been expanded because unit 'System.Types' is not specified in USES list
[dcc32 Hint] fs_iformsrtti.pas(429): H2443 Inline function 'TList.Remove' has not been expanded because unit 'System.Types' is not specified in USES list

我不喜欢提示,更不用说代码中的警告了。当然,现在 H2443 提示可能不是最麻烦的提示,但我仍然想摆脱它。

幸运的是,如果它是我们自己的代码,则修复 H2443 很简单(只需添加它要求的引用即可)。但即使在这种情况下我们可以访问第三方源代码,突然改变它还是感觉不合适

所以我想知道:我应该等待FastReport的开发人员发布没有错误的新版本,还是应该自己修复它,然后在新版本发布时覆盖我的源文件副本?

我想这个问题在技术上可以概括为如何处理第三方库中的提示/警告。我考虑过通知开发人员,但这不是开源/免费软件项目,因此修复需要几个月的时间。

(公平地说,我应该提到,以前的版本中曾经有更多的提示,所以至少有朝着正确方向迈出的步骤。)

最佳答案

这是我在 Delphi 开发人员中经常看到的一个常见错误(许多第 3 方供应商也犯了这个错误)。为什么每次构建项目时都要编译第 3 方库?

使用 DCU。将它们与源分开,并将库路径指向包含 DCU 的目录。这不仅可以加快您的构建过程(因为它不会再次编译第 3 方源代码,而是使用 DCU),而且也不会用来自第 3 方库的消息淹没您的项目。

如果您想深入了解这些组件的源代码(根据我的经验,您通常不希望这样做),您可以将源代码添加到浏览路径,甚至可以调试和发布您正在使用的 DCU。

关于delphi - 如何处理第三方库中的警告/提示?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22914160/

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