#go
#Вперед
Вопрос:
Я обнаружил, что struct
определено в исходном коде пакета, подобного этому:
var resp struct {
CreateTodo struct{ ID string }
}
Я всегда определяю struct следующим образом:
type resp struct {
CreateTodo struct{ ID string }
}
Я никогда этого не видел. После поиска я нашел только документ об этом. Но нет объяснения его значения.
Итак, в чем разница между type xxx struct {}
и var xxx struct {}
? Когда и как я должен использовать var xxx struct {}
? Спасибо.
Комментарии:
1.
type xxx
объявляет новый тип,var xxx
объявляет новую переменную.2. @zerkms Я понял. Это объявление переменной
resp
, тип которой является анонимной структурой
Ответ №1:
Это объявляет переменную resp
, типом которой является (анонимная) struct.
Комментарии:
1. Я понял. Это то же самое, что и
var resp string
, но здесьresp
тип s — это (анонимная) структура.2. Дополнительная информация: talks.golang.org/2015/tricks.slide#6