使用字段名来初始化结构

初始化结构体时,必须指定字段名称。go vet 强制执行。

BadGood
  1. k := User{"John", "Doe", true}
  1. k := User{
  2. FirstName: "John",
  3. LastName: "Doe",
  4. Admin: true,
  5. }

例外:在测试文件中,如果结构体只有3个或更少的字段,则可以省略字段名称。

  1. tests := []struct{
  2. }{
  3. op Operation
  4. want string
  5. }{
  6. {Add, "add"},
  7. {Subtract, "subtract"},
  8. }