从 Delphi 调用 c++ 类库
Call c++ class library from Delphi
是否可以从 delphi 2007 调用C++类库?这样做的方法是什么?我知道如何调用dll函数,但是如何处理类?
有几种方法可以做到这一点,但不能直接使用 C++ 类。实现此目的的两种有用方法都需要一些工作,此处对此进行了广泛描述:
在德尔福中使用C++对象 (http://rvelthuis.de/articles/articles-cppobjs.html)
更新
好的,我被要求进行更新。本文介绍了两种方法:
- 编写和公开 C 函数,这些函数将C++对象作为(第一个)参数(C++类型在 Delphi 中简单地作为不透明类型传递),这些函数通过使用正确的参数调用类方法来执行类提供的功能。C函数可以从Delphi调用。
- 为类编写 COM 包装器。本文介绍了如何在C++中完成此操作。
详细信息可以在文章中找到。
您不能从 Delphi 消费C++类。您需要以其他互操作友好的方式包装它们。例如:
- 使用公开功能的 C 样式函数包装C++类。
- 公开提供该功能的 COM 对象。
相关文章:
- 如何在 Win32 C++控制台应用程序中调用 UWP 类库
- 将非类库分离为标头和实现的方法
- 隐式友元类库
- 如何在Arduino中创建另一个类库的实例变量
- 类库创建者
- 为什么要使用抽象类来创建类库
- 将通用Windows C#类库引用到通用Windows C DLL Project Visual Studio 2
- 矢量类库的处理速度
- 使用 Agner 的向量类库编译多架构代码
- 从 Delphi 调用 c++ 类库
- 在类库项目中创建模板类C++
- 在 C# 中使用 C CLR::类库
- C,如何将多维数组传递给CLR/类库项目中的函数
- Visual Studio C 类库中的回调
- 从C#(64位)加载C 类库
- c++类库动态运行时分配
- 如何将C++对象传递给C#类库
- C++中的免费地理数据类库(Lat/Lng/距离/转换)
- 如何从用C#编写的类库中引用用C++编写的Windows运行时组件
- C++/CLI 项目如何引用可移植类库