使用C++扩展Ruby?

Oli*_*nde 1 c++ ruby

有没有办法将Ruby对象传递给C++应用程序?我之前从未做过那种事情,并且想知道这是否可行.它需要修改Ruby核心代码吗?

gre*_*ade 5

是的,不,分别.

Ruby是用C语言编写的.C++在设计上是C兼容的.

Ruby中的所有对象都由VALUE对象(这是一种union类型)保存,它可以很容易地传递.

您发现使用C扩展Ruby的任何指示都适用于C++而几乎没有任何修改.或者,您可以使用SWIG之类的东西来简化编写扩展程序.