从Delphi调用c ++类库

时间:2014-02-28 10:59:48

标签: c++ delphi dll

是否可以从delphi 2007调用C ++类库?这样做的方法是什么?我知道如何调用dll函数,但是如何处理类?

2 个答案:

答案 0 :(得分:7)

有几种方法可以做到这一点,但是你不能直接使用C ++类。实现这一目标的两种有用方法都需要一些工作,并在此处进行了详细描述:

在Delphi中使用C ++对象(http://rvelthuis.de/articles/articles-cppobjs.html

更新

好的,我被要求做更新。本文介绍了两种方法:

  • 编写和公开将C ++对象作为(第一个)参数的C函数(C ++类型简单地在Delphi中作为opaque类型传递),它通过使用正确的参数调用类方法来执行类提供的功能。可以从Delphi调用C函数。
  • 为类编写COM包装器。本文介绍了如何在C ++中完成此任务。

详细信息可以在文章中找到。

答案 1 :(得分:1)

你不能从Delphi中使用C ++类。您将需要以其他友好的互操作方式包装它们。例如:

  1. 使用公开功能的C样式函数包装C ++类。
  2. 公开提供功能的COM对象。