douhe6181 2012-06-12 03:25
浏览 150
已采纳

在Go中声明带有“ var”的新结构实例与使用“ new”有何不同?

The following code creates a usable instance of the struct, Car. How is this different than using new(Car)?

Example:

type Car struct {
  make string
}

func Main() {
  var car Car; // how is this different than "car := new(Car)"?

  car.make = "Honda"
}
  • 写回答

1条回答 默认 最新

  • dspld86684 2012-06-12 03:45
    关注

    One defines a Car variable, the other returns a pointer to a Car.

    var car Car      // defines variable car is a Car
    car2 := new(Car) // defines variable car2 is a *Car and assigns a Car to back it
    

    car := new(Car) can be implemented in relation to var car Car like this:

    var x Car
    car := &x
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 如何在sql server里完成筛选
  • ¥15 请问为什么我配置IPsec后PC1 ping不通 PC2,抓包出来数据包也并没有被加密
  • ¥200 求博主教我搞定neo4j简易问答系统,有偿
  • ¥15 nginx的使用与作用
  • ¥100 关于#VijeoCitect#的问题,如何解决?(标签-ar|关键词-数据类型)
  • ¥15 一个矿井排水监控系统的plc梯形图,求各程序段都是什么意思
  • ¥50 安卓10如何在没有root权限的情况下设置开机自动启动指定app?
  • ¥15 ats2837 spi2从机的代码
  • ¥200 wsl2 vllm qwen1.5部署问题
  • ¥100 有偿求数字经济对经贸的影响机制的一个数学模型,弄不出来已经快要碎掉了