pointers - Go中如何从reflect.Value获取指针?

标签 pointers go reflection interface

据我所知,带有指针接收器的方法只实现指针的接口(interface)。我想利用必须用指针实现的 encoding.TextMarshaler 接口(interface)。因此,我如何使用反射获取指针。

以下不起作用,因为如前所述,值未实现接口(interface):

v.Interface().(encoding.TextUnmarshaler)

最佳答案

使用 v. Addr() .Interface().(encoding.TextUnmarshaler) 获取地址。这假设 v 引用了一个 addressable值(value)。

关于pointers - Go中如何从reflect.Value获取指针?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48103758/

相关文章:

golang channel 在接收值之前死锁

使用泛型的 Java 工厂,.class 与 .getClass()

更改 char 数组的值

c - 如何使用指针替换字符串中的字符? (在 C 代码中)

c - 使用指针获取数组的长度

go - 如何将变量从 init 函数(在 main.go 中)导入到不同的文件中?

amazon-web-services - 如何使用 golang 从 AWS S3 下载

c - 为 int* 动态分配 100 个字节,然后尝试使用指针算法为其设置值有什么影响?

c# - 将类的属性设置为函数的参数

java - 在运行时动态创建JTable