- 已关闭。**此问题为not reproducible or was caused by typos。当前不接受答案。
这个问题是由打字错误或无法再重现的问题引起的。虽然类似的问题在这里可能是on-topic,但这个问题的解决方式不太可能帮助未来的读者。
4天前关闭。
Improve this question
也许这是问题很简单,但我已经花了一些时间,并没有能够找到任何好的解决方案(例如,我们有以下代码:
var someValue int = 10
v := reflect.ValueOf(someValue)
var v1 reflect.Value // should refer to &someValue, but with using of the "v" variable only
我知道最简单的解决方案是***v1:= reflect.ValueOf(& someValue)***或使用***reflect.New()***函数,但不幸的是,这在我的情况下不起作用。
只能使用"v"变量初始化"v1"变量。
1条答案
按热度按时间svmlkihl1#
调用
reflect.ValueOf(someValue)
时,向ValueOf传递someValue的副本。ValueOf的参数地址与调用站点上someValue的地址不同。无论ValueOf返回什么,它都不可能知道原始someValue的地址,因此您想在这里实现的是不可能的。
你能做的最好的事情就是调用Value.Addr,它将返回一个reflect.Value,它表示传递给ValueOf的someValue的副本的地址: