在C++中嵌入Ruby缺少“class”方法

6pp0gazn  于 4个月前  发布在  Ruby
关注(0)|答案(1)|浏览(56)

在C++中嵌入ruby的时候有一个问题,我想请你帮忙解决一下。我正在从一个旧版本的ruby升级到3.2版本。以前,我可以像往常一样调用ruby_init和ruby_init_loadpath,然后就可以正常工作了,但是现在我需要在调用ruby_init_loadpath之前调用ruby_executable_node。
类似这样的东西(ruby的参数是任意的):

char* opt[] = { "ruby", "-v", "-eputs 'Starting'" };
int status;
ruby_executable_node(ruby_options(3, opt), &status);

字符串
这看起来不像是正确的做法,但除非我这样做,否则我所有的ruby对象都缺少class方法(错误是undefined method `class ')。我查看了ruby的更新日志,但找不到任何与此更改相关的内容。有人知道为什么会发生这种情况,或者是否有解决方法?
谢谢你

np8igboo

np8igboo1#

基于this example,你可以传递参数"-e ",让Ruby在传递选项时不执行任何代码。

相关问题