小编sle*_*ene的帖子

使用reflect,如何初始化struct指针字段的值?

package main

import (
    "fmt"
    "reflect"
)

type A struct {
    D *int
}

func main() {
    a := &A{}
    v := reflect.ValueOf(a)
    e := v.Elem()
    f := e.Field(0)
    z := reflect.Zero(f.Type().Elem())
    f.Set(z)
    fmt.Println(z)
}
Run Code Online (Sandbox Code Playgroud)

panic:reflect.Set:int类型的值不能赋值为*int

如何将*D设置为默认值使用反射

go

12
推荐指数
1
解决办法
5126
查看次数

标签 统计

go ×1