什么最适合编写本机库并使用语言绑定在多种语言中使用它?

时间:2013-02-02 16:19:09

标签: c++ c cross-platform native-code language-binding

哪种语言(C或C ++)最适合编写本机库并使用不同语言使用语言绑定(例如,使用JNI或Ruby的C扩展),以及为什么?

2 个答案:

答案 0 :(得分:6)

C,因为

  1. 用C ++编写的程序可以使用C库,反过来也是一件非常棘手的事情 - C ++中可用但C语言中没有的任何构造都无法导出到C程序,这可能会使导出变得复杂。 / LI>
  2. C库的依赖性较小。 C ++库通常依赖于libstdc ++,例如在嵌入式系统上,或者更常见的是在资源不足的系统上,它并不总是可用的。

答案 1 :(得分:5)

如果您愿意,只要您提供外部“C”绑定/导出就可以用C ++编写库,以便其他运行时可以使用它。