3

次のコードは、構造体の使用可能なインスタンスを作成しますCar。これは を使用する場合とどう違うのnew(Car)ですか?

例:

type Car struct {
  make string
}

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

  car.make = "Honda"
}
4

1 に答える 1

8

1つはCar変数を定義し、もう1つは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)このように関連して実装することができますvar car Car

var x Car
car := &x
于 2012-06-12T03:45:01.973 に答える