Go.Основы.Структуры

Go.Основы.Структуры

https://t.me/HotCheatSheet
Структуры

type имя_структуры struct {

переменная1 тип_переменной1

переменная2 тип_переменной2

}

Пример:

type Structure struct {
    x float64
    y float64
    z float64
}

type Structure1 struct {
    x, y, z float64
}
Объявление
var s1 Structure

Или так:

s2 := new(Structure)
s3 := Structure{x: 1, y: 2, z: 3}
s4 := Structure{1, 2, 3}
Поля

Получить доступ к полям можно с помощью оператора . (точка)

Пример:

s5 := new(Structure)
s5.x = 2
s5.y = 4
s5.z = 8
Методы
import "fmt"

func (s6 *Structure) add() float64 {
    return s6.x + s6.y + s6.z
}

func main() {
    s6 := Structure{x: 1, y: 2, z: 3}
    fmt.Println(s6.add())
}
Интерфейсы
type Book struct {
 name string
}

func (book *Book) about() string {
 return "Book: " + book.name
}

Report Page