duktape,修改本机 C 代码中的变量参数

duktape, modify variable argument in native C code

我正在尝试修改在本机函数中的参数中传递的变量,如下所示:

var MyVar = 'foo';
myNativeFunc(MyVar);

在我的母语中,我可以读取 MyVar 的内容:

std::string(duk_to_string(ctx, 0));

但是,我需要在原生函数中修改这个变量的值。 最好的方法是什么? (我不能使用 return 语句)谢谢。

这是不可能的,因为它会实现引用传递(JS 不支持)。另请阅读问题 Pass Variables by Reference in Javascript

的答案

因此,要么传入对象引用并更改对象属性,要么使用 return 值。