关于使用modelica(通过dymola)的外部函数,我有两个疑问:
外部函数
1/我们可以使用c++语法吗?根据我的测试,No
我得到这个错误:
C:Program FilesMicrosoft Visual Studio**includeyvals_core.h(23): fatal error C1189: #error: STL1003: Unexpected compiler, expected C++ compiler
2/基本上,modelica可以运行外部C函数。
通常,我们将编译所需的所有头文件/库文件放入Resources目录。
下面的树形结构:
- 包括
- * . h
- 图书馆
- win64
- * . dll
- win64
但是,我也得到了一个错误:dsmodel.obj : error LNK2019: unresolved external symbol * referenced in function *
如果你对这个问题有任何想法!
正如您所说,Modelica有一个到C的接口,并期望编译C代码。通过在c++库的API中使用extern "C"
,可以为c++函数提供接口。剩下的"细节"是确保你也得到c++运行时。