douchui4459 2018-03-06 04:28
浏览 18
已采纳

在Go中扩展未命名类型

So the following works:

type Individual [][]int
type Population []*Individual

What I'm trying to do is add a field to Population so I do the following

var p Population
p.Name = "human"

So I tried this:

type Individual [][]int
type Population struct {
     []*Individual
     Name string
}

But it doesn't work for me. How do I do this?

  • 写回答

1条回答 默认 最新

  • doujianwan7570 2018-03-06 04:42
    关注

    You should declare a name for the field of your struct:

    package main
    
    import (
        "fmt"
    )
    
    type Individual [][]int
    
    type Population struct {
        Individual []*Individual // <- A name for field
        Name       string
    }
    
    func main() {
        var p Population
        p.Name = "human"
        fmt.Printf("%+v", p)
    }
    

    playground

    => {Individual:[] Name:human}
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?