通过在C ++接口周围创建C包装器,在FORTRAN中调用C ++ dll文件

时间:2016-03-22 14:01:01

标签: c++ c dll fortran

我的任务是负责在FORTRAN中开发一段代码,该代码将调用用C ++编写的.dll文件,并使用dll文件中的子程序进行计算。 我已经向.dll文件的开发人员邮寄了关于这种实现的可能性。以下是开发人员的回复

  

直接从FORTRAN调用此接口是不可能的。   可以围绕C ++类接口创建一个标准的C包装器,然后从FORTRAN调用标准C(使用可以链接到并调用Visual Studio .dll的编译器)。"

我自己是一个使用dll的业余爱好者,任何帮助(链接到教程,示例代码)将不胜感激。

状态到现在:由于我没有dll文件的源代码,我已经执行了dumpbin并提取了函数的名称。

1 个答案:

答案 0 :(得分:1)

您创建了一系列C ++函数,每个函数都声明为extern "C",可以从Fortran中调用。要构建它们,您需要DLL的头文件;你包含它,并编写你必须编写的任何C ++代码,从一个简单的fortran-callable函数映射到DLL所宣传的API。