我有一个用 Delphi 编写的大型应用程序。我想更新它,从用户界面开始。我考虑过使用新的 Qt。在更新的过程中,我想把编程语言改成C++。 有没有办法逐步重写应用程序(从 UI 开始)以更改为 C++?
感谢您的帮助。
最佳答案
最佳行动方案在很大程度上取决于 C++ 开发环境。
如果是 C++ Builder 你有两种可能:
使用运行时包而不是普通的 DLL。当涉及到字符串编码和将类层次结构映射到平面 DLL 函数时,这会让您省去很多麻烦。
使用混合代码。您可以在同一个项目中混合使用 Delphi/Pascal 代码和 C++ 代码。 (尽管单个模块/单元中只有一种语言)
如果是其他任何C++编译器:
按照您建议的方式使用 DLL。您必须创建某种层/外观来将类的功能映射到平面 DLL 函数。
即使您使用的是 C++ Builder,如果您想使用普通的 DLL 方式,您可以尝试使用共享内存管理器,如 ShareMem(Delphi 附带)或 FastMM (SourceForge) 以允许传递
string
而不是PChar
。创建 .objs 而不是 .dcus,以便两个编译器使用相同的输出格式。然后将它们直接链接到您的 C++ 程序中。这与创建 DLL 基本相同,但它是静态的。您将在编译时而不是运行时发现某些类型的错误。
关于c++ - 逐步将 Delphi 移植到 C++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/877193/