作者热门文章
- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我想在 OCaml 和 C++ 之间架起一座桥梁。例如,我想在 C++ 中使用一些用 OCaml 编写的结构。
我怎样才能做到这一点?是否有任何库、绑定(bind)?
最佳答案
您应该阅读语言手册的相关部分:Interfacing C with OCaml .它非常详细,即使从本质上讲,它的水平低得令人痛苦。
如果您不需要 C++ 和 OCaml 代码之间的紧密通信(例如,您连接 GUI 代码和计算代码,但应用程序的计算密集型内核不跨越应用程序边界,或者在至少与双方花费的时间相比,通信成本预计可以忽略不计),我建议您探索更简单的方法,其中 C++ 和 OCaml 代码在单独的进程中运行,并通过消息传递交换信息(以任何格式最方便定义:文本、s-表达式、二进制格式、JSON 等)。如果我确定更简单的方法行不通,我只会尝试在相同进程中桥接代码。
编辑:自从我去年写了这个答案,Ctypes库出现了,来自 Jeremy Yallop;这是一种非常有前途的方法,可能比直接将 C 与 OCaml 接口(interface)简单得多。
关于c++ - 如何在 OCaml 和 C++ 之间实现互操作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15186414/
我是一名优秀的程序员,十分优秀!