reorganize: interfaces section

This commit is contained in:
Inanc Gumus
2019-08-21 20:38:38 +03:00
parent 8cb42216e4
commit c282da3c6d
27 changed files with 126 additions and 20 deletions

View File

@ -9,19 +9,22 @@ package main
func main() {
var (
// mobydick = book{title: "moby dick", price: 10}
mobydick = book{title: "moby dick", price: 10}
minecraft = game{title: "minecraft", price: 20}
tetris = game{title: "tetris", price: 5}
)
var items []game
items = append(items, minecraft, tetris)
// sends a pointer of minecraft to the discount method
// same as: (&minecraft).discount(.1)
minecraft.discount(.1)
// you can attach methods to a compatible type on the fly:
my := list([]game{minecraft, tetris})
mobydick.print()
minecraft.print()
tetris.print()
// you can call methods even on a nil value
// my = nil
my.print() // or: list.print(items)
// creates a variable that occupies 200mb on memory
var h huge
for i := 0; i < 10; i++ {
h.addr()
}
}