может быть назначен или сохранен в переменной типа
коде Kubernetes,kubectl/run.go
Функция имеет список результатов этих двух типов:Generate
Последняя строка функции:
runtime.Object, error
импортируется:
return &deployment, nil
runtime
я получил
k8s.io/apimachinery/pkg/runtime
запустивruntime
в этом операторе импорта, и объект определяется вgo get
(И я нашел тот же код в Интернетеinterfaces.go
:
type Object interface {
GetObjectKind() schema.ObjectKind
DeepCopyObject() Object
}
Вот.)Оператор адреса создает указатель ... точнее, спецификация Go гласит:
Для операнда x типа T операция адреса & x генерирует указатель типа * T на x.
и указатели
иметь тип, отличный от их базового типаТип указателя обозначает набор всех указателей на переменные данного типа, называемые базовым типом указателя.:
Как
удовлетворить&deployment
тип?runtime.Object
Мое лучшее предположение пока что
реализуетdeployment
интерфейс и отображениеruntime.Object
в&deployment
удовлетворяетruntime.Object
это правило присвоенияT является типом интерфейса, а x реализует T.:
и что оператор оператора return, сопоставленный с типом списка результатов, эквивалентен присваиванию в этом отношении. Это верно? Если нет, есть ли другая часть спецификации или документации, которая объясняет это?
является локальной переменной, ее объявление: