new函数

  • 可以通过new函数直接创建一个类型的指针
变量名:=new(Type)
  • 使用new函数创建的指针已有指向,可以使用*指针对象进行赋值.
func main() {
    a := new(int)
    fmt.Println(a) //输出:指针地址
    *a = 123
    fmt.Println(*a) //输出:123
}
  • 只声明的指针变量不能直接赋值
func main() {
    var a *int
    *a = 123
    fmt.Println(*a)
}
  • 结果
panic: runtime error: invalid memory address or nil pointer dereference
[signal 0xc0000005 code=0x1 addr=0x0 pc=0x48b576]

posted on 2019-12-23 20:27  不要挡着我晒太阳  阅读(623)  评论(0编辑  收藏  举报

导航