美文网首页
结构体struct 使用总结

结构体struct 使用总结

作者: 不死鸟F21 | 来源:发表于2020-01-03 15:58 被阅读0次

    1.嵌套基本类型 创建新的类型---类比"class"

    type People struct {
        name, city string
        age        int8
    }
    

    2.基本使用例1

    package main
    
    import "fmt"
    
    type student struct {
        name string
        age  int
    }
    
    func main() {
        m := make(map[string]student)
        students := []student{
            {name: "小王子", age: 18},
            {name: "娜扎", age: 23},
            {name: "大王八", age: 9000},
        }
        for index, val := range students {
            m[val.name] = val
            fmt.Println(index)
        }
    
        for index, val := range m {
            fmt.Println(index, val)
        }
    }
    
    package main
    
    import "fmt"
    
    import "unsafe"
    
    // People def
    type People struct {
        Name string
        Age  int
    }
    
    func (p *People) String() {
        fmt.Printf("%p\n", unsafe.Pointer(&p.Name))
    }
    
    // Str definition
    func (p People) Str() {
        fmt.Printf("%p\n", unsafe.Pointer(&p.Name))
    }
    
    func main() {
    
        p := new(People)
    
        fmt.Printf("%p\n", unsafe.Pointer(&p.Name))
        p.Str()
    }
    
    3.初始化及定义
    package main
    
    import "fmt"
    
    type Persion struct {
        name string
        sex  byte
        age  int
    }
    
    func main() {
    
        var man Persion = Persion{"Alex", 'f', 18}
        fmt.Println(man)
        man2 := Persion{name: "隔壁老赵", age: 21}
        fmt.Println(man2)
    }
    
    
    

    相关文章

      网友评论

          本文标题:结构体struct 使用总结

          本文链接:https://www.haomeiwen.com/subject/ekbzoctx.html