有没有办法将Ruby对象传递给C++应用程序?我之前从未做过那种事情,并且想知道这是否可行.它需要修改Ruby核心代码吗?
是的,不,分别.
Ruby是用C语言编写的.C++在设计上是C兼容的.
Ruby中的所有对象都由VALUE对象(这是一种union类型)保存,它可以很容易地传递.
union
您发现使用C扩展Ruby的任何指示都适用于C++而几乎没有任何修改.或者,您可以使用SWIG之类的东西来简化编写扩展程序.