我可以使用 DXL 门内的地址来设置变量的值吗?
Can I set the value of a variable by using the address within DXL doors?
所以我想做的是通过地址将变量传递给 eval_
,然后像这样在其中设置变量:
string str = "a"
Addr64_ addr = addr_ str
eval_("string ref = addr_ " addr "; ref = \"b\"")
print str // I want it to print b here
我知道我可以 evalTop_
在这里让 top 变量对 eval 可用,这样它就可以设置它,但这不是我想要的行为。
经过大量调试并结合来自以下来源的不同答案:
我找到了解决办法!以下代码基本上适用于任何变量:
bool a = false
eval_("bool &a = addr_ " (addr_ (&a)) "; a = true")
print a // should print true
所以我想做的是通过地址将变量传递给 eval_
,然后像这样在其中设置变量:
string str = "a"
Addr64_ addr = addr_ str
eval_("string ref = addr_ " addr "; ref = \"b\"")
print str // I want it to print b here
我知道我可以 evalTop_
在这里让 top 变量对 eval 可用,这样它就可以设置它,但这不是我想要的行为。
经过大量调试并结合来自以下来源的不同答案:
我找到了解决办法!以下代码基本上适用于任何变量:
bool a = false
eval_("bool &a = addr_ " (addr_ (&a)) "; a = true")
print a // should print true