
php小编柚子在这里为大家介绍一种使用反射器指针的方法来设置map1和map2的值。通过反射器指针,我们可以方便地访问和修改对象的属性和方法,实现对map1和map2的值的动态设置。这种方法不仅简单易懂,而且提供了灵活性,可以根据需要随时更改map1和map2的值。下面就让我们一起来看看具体的操作步骤吧!
测试我的示例代码: https://go.dev/play/p/g7lxjdnjnan
最终结果:
&{0}
&{1}我希望如何从示例终端输出
&{1}
&{1}我在项目中的代码:
func Set(recv *Value, value Value) {
reflect.ValueOf(recv).Elem().Set(reflect.ValueOf(value))
}
func (this *SetBlock) On_Exec(locals map[string]Value) {
//this.inputs["Recv"].Value is pointing to the same value as global
if this.inputs["Recv"].Value != nil {
Set(&this.inputs["Recv"].Value, this.inputs["Value"].Value.Copy())
}
//this.layer.Game.Globals() is a original
fmt.Println(this.layer.Game.Globals())
this.outputs["After"].Value = Create_Bool(true)
}
我来这里是因为我什至不知道如何研究这个。
有变化 a和b。 帮助我使用“设置”功能的人发送了一个代码。 希望你也发来。 由于某种原因它起作用了,但现在不起作用了。
我无法分配给地图, 因为这个函数的制作方式使得我什至不知道该值是来自数组(如果它是变量还是地图标签)
“设置”功能适用于不同类型 https://go.dev/play/p/tggxpxf5kx9
我确信可行的一种方法是创建一个指针,而不是地图指针, 一个指向 2 个映射值的指针
“设置”功能基于将指针设置为另一个指针。 我认为错误是我指向了错误的指针
我设想,在创建值时我创建了两个指向该值的指针,即 ** 并以这种方式改变。 谢谢:@JimB
以上就是通过反射器指针设置map1和map2的值的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号