我爱占星网 我爱占星网
首页
编程
java
php
前端
首页 编程 java php 前端

从接口去获取指向结构体的指针?

Given an interface, how do I obtain a pointer to the underlying value?

My naive attempt was to use a type assertion like this:

var mytypeptr *MyType = myinterface.(*MyType)

But I get:

interface conversion: MyInterface is MyType, not *MyType

You could start with, using reflect.Indirect():

val := reflect.ValueOf(myinterface)
if val.Kind() == reflect.Ptr {
    val = reflect.Indirect(val)
}

近期文章

  • 需要使用golang从CQL映射中删除,但要避免CQL注入
  • 通过exec.Command在控制台中工作
  • Go项目工作区如何与依赖工具和go工具一起使用?
  • Golang:C代码出现严重错误(严重错误),无法恢复
  • Golang:从多个.txt文件写入.sql文件时出现问题
  • 带有openGL绑定支持的本地语言可编译为LLVM
  • 如何在goeclipse IDE中执行go测试文件
  • 意外的属性static_dir:
  • 对地图数据使用结构
  • Windows和Linux上通过mgo驱动程序对ObjectID的不同处理
  • 安装go-oci8时出错
  • Go-来自电子邮件的故障安全字符集
  • 在OSX 10.9上编译C软件包
  • 如何将Go通道值存储到其他一些数据类型(字符串,字节[])中,并将其重新分配给其他Go通道
  • 在go中访问函数返回的多个结果参数之一
  • 是否可以通过queue.yaml配置延迟程序包使用的任务队列?
  • Golang:新手-主从并发
  • Revel框架,数据库模块和gorp
  • Appengine中动态种类的索引
  • PANIC =运行时错误:索引超出范围

Copyright ©2022 我爱占星 All Rights Reserved.

浙ICP备2022030071号-1

部分图文来自网络,如有侵犯您的版权,请告诉我们删除

友情链接:代码精华