1
私はQTアプリでルビーを埋め込み、クラスを作成し、彼の新しい方法Rubyのrb_define_method - 無効な変換
VALUE Base = rb_define_class("Base", NULL);
VALUE Base_Initialize(VALUE self);
rb_define_method(Base, "initialize", Base_Initialize, 0);
を追加しようとするが、Cの拡張機能で
invalid conversion from 'VALUE (*)(VALUE) {aka long unsigned int (*)(long unsigned int)}' to 'VALUE (*)(...) {aka long unsigned int (*)(...)}' [-fpermissive]
をコンパイルしながら、私はエラーを取得するには、うまく働きました。
おそらく 'Base_Initialize'は' extern "C" 'である必要がありますか? –
'extern" C "'、私が知っているように、C++の拡張ではなく、埋め込まれたルビに必要です。ところで、私はこれを試しました。 – Strelokhalfer