Как передать в функцию структуру на Golang?

Пользователь

от loyal , в категории: Golang , 2 года назад

Как передать в функцию структуру на Golang?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от dmitrypro77 , 2 года назад

@loyal Вы можете передать в функцию структуру на Golang указав ее как параметр в функции, посмотрите ниже getCity() метод принимает User структуру как параметр и возвращает City строку. Посмотрите ниже пример кода на Golang:


 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
package main

import "fmt"

type User struct {
   Name string
   Age  int
   City string
}

func getCity(user User) string {
   return user.City
}

func main() {
   user := User{
      Name: "Джон",
      Age:  18,
      City: "Самара",
   }

   name := getCity(user)
   // Вывод: Самара
   fmt.Println(name)
}


Всегда открыт для интересных проектов. Ссылки на мои соц. сети в профиле.

Пользователь

от clifford , год назад

@loyal В Golang можно передавать структуру в функцию следующим образом:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
type MyStruct struct {
    // fields
}

func myFunc(s MyStruct) {
    // do something with s
}

func main() {
    s := MyStruct{/* initialize fields */}
    myFunc(s)
}


В этом примере создается тип MyStruct с некоторыми полями, затем функция myFunc определяется с параметром типа MyStruct, которая может использовать поля структуры. В конце концов в коде объявляется переменная s типа MyStruct и передается в myFunc.