Alfredo Baciu Asked: 2024-11-08 00:45:57 +0800 CST2024-11-08 00:45:57 +0800 CST 2024-11-08 00:45:57 +0800 CST Delphi 是否有相当于 C/C++ 的头文件? 772 我正在查看 Delphi包文件文档,并注意到BPL其他操作系统的等效文件分别是dylibMacso和 Linux 的。 我不确定 Delphi 是否有等效的头文件(.h/.hxx)。 在 Mac 中,如果我想共享一个项目(用 c/c++ 构建)而不公开源代码,我会共享dylib文件和h/hxx文件。 例如,在 Delpih 中,如果我想共享一个库而不公开源代码。其他帖子提到您必须提供一个.dcu和.bpl文件。 这使我相信 Delphi 中头文件的等效项必须是一个文件,但文档dcu中的描述 听起来不像头文件。 也许我理解得不正确? delphi 1 个回答 Voted Best Answer istepaniuk 2024-11-08T00:59:54+08:002024-11-08T00:59:54+08:00 原生 Delphi 中的 DCU 文件充当编译后的单元文件,包含接口(类似头文件)和实现(类似目标文件)。 BPL 文件作为可重复使用、动态链接的包,类似于您提到的 .dll、.dylib 或 .so 文件。 与 C 或 C++ 不同,Delphi 中没有单独的“头文件”;单元中的接口部分(在原始 .pas 文件中)和生成的 .dcu 文件负责此角色。 如果您只有 DLL(没有源代码),您可以通过创建接口单元向其他 Delphi 项目提供函数声明。这有点类似于 C 的 .h,看起来像这样: unit SomeDLLInterface; interface function Example(a, b: Integer): Integer; stdcall; external 'MyLibrary.dll'; procedure DoSomething(msg: PChar); stdcall; external 'MyLibrary.dll'; implementation end.
原生 Delphi 中的 DCU 文件充当编译后的单元文件,包含接口(类似头文件)和实现(类似目标文件)。
BPL 文件作为可重复使用、动态链接的包,类似于您提到的 .dll、.dylib 或 .so 文件。
与 C 或 C++ 不同,Delphi 中没有单独的“头文件”;单元中的接口部分(在原始 .pas 文件中)和生成的 .dcu 文件负责此角色。
如果您只有 DLL(没有源代码),您可以通过创建接口单元向其他 Delphi 项目提供函数声明。这有点类似于 C 的 .h,看起来像这样: