【发布时间】:2013-05-23 14:41:22
【问题描述】:
在我维护的大型 Delphi 7 项目中,数据以图形结构表示,随着边数的增加,求解所需的时间呈指数增长。
我知道可以使用 BGL 中的函数以更高的速度解决该图,但是,我不相信我可以将标题 (.hpp) 直接包含到项目中。
我有哪些选择?有没有办法包含标头,或者我是否需要在 Pascal 中重写所需的功能时考虑重写?
【问题讨论】:
-
打包库并将其作为 DLL 公开。或者找到这个算法的 Delphi 实现,不管它实际上是什么。
-
DLL 选项听起来很有希望,您认为这会导致大量通信开销吗?算法是push_relabel_max_flow,但是目前还没有找到Delphi的实现。
-
如果切换算法的性能提升很大,那么在 DLL 中调用函数的性能成本是微不足道的。这只是一个函数调用。仅此而已。
-
TeamB 的 Rudy Velthuis 写了一篇关于 Using C++ Objects in Delphi 的文章,这可能对您有所帮助,但使用 BGL 不仅仅是包装单个函数。我很难提出替代方案,因为您没有提供任何有关该功能具体用途的信息。
-
“求解图形”到底是什么意思?在这个问题中,这似乎是一个巨大的模糊区域。
标签: delphi boost delphi-7 boost-graph