• Golang. Почему в коде переменной присваивается ссылка на структуру?

    @FedorWK
    Структуры в Го передаются по дефолту по значению, то есть передается копия экземпляра. В данном случае было принято решение возвращать указатель на структуру (result *v1.Pod), чтобы избежать копирования (либо потому, что так принято). См. сигнатуру функции:
    func (c *pods) Get(ctx context.Context, name string, options metav1.GetOptions) (result *v1.Pod, err error)

    Поскольку по сигнатуре мы должны вернуть указатель на структуру, мы берем ее адрес (&v1.Pod{}), а не значение структуры (v1.Pod{}).

    Подобный вопрос на SO
    Ответ написан
    Комментировать