自定义类型和类型别名

自定义类型

格式

type 自定义类型 类型名

例子

package main

import "fmt"

//自定义类型和类型别名

//type 后面跟的是类型
type myint int

func main() {
  var n myint

  n = 100
  fmt.Printf("%T %v", n, n) //这里变量类型变成了main.myint
} 

作用,用于造方法

类型别名

格式

type 类型别名=类型名

例子

package main

import "fmt"

//自定义类型和类型别名

//type 后面跟的是类型
type myint int

type youint = int

func main() {
  var n myint

  n = 100
  fmt.Printf("%T %v\n", n, n)

  var m youint

  m = 100

  fmt.Printf("%T %v", m, m) //这里可以发现变量的类型还是int没有发生改变
}

作用,编写代码更清晰

结构体第二种赋值方法key value法

  var p2 = person{
    name:   "菜菜子",
    age:    56,
    gender: "女",
    hobby:  []string{"唱歌"},
  }
  fmt.Println(p2)

第三种赋值方法,列表值初始化

//注意值的顺序要和声明的结构体定义的顺序一致,而且要含有之前定义的所有变量
  p3 := person{
    "消炎",
    12,
    "男",
    []string{"制动"},
  }
  fmt.Println(p3)

结构体占用一块连续的内存空间

posted @ 2023-02-08 20:59  suknna  阅读(30)  评论(0)    收藏  举报