1
0
mirror of https://github.com/MADTeacher/go_basics.git synced 2025-11-23 21:34:47 +02:00
Files
go_basics/part_4/4.3/1.go
2025-06-04 19:37:39 +03:00

34 lines
555 B
Go

package main
import "fmt"
type Person struct {
name string
age uint8
}
func (p *Person) incAge() {
p.age++
if p.age > 30 {
defer func() {
fmt.Println("Calling defer function")
}()
panic(fmt.Sprintf("%s too old!!!", p.name))
defer func() { // нет смысла в вызове отложенной функции после паники
fmt.Println("Useless function")
}()
}
}
func main() {
alex := &Person{
name: "Alex",
age: 27,
}
for i := 0; i < 6; i++ {
alex.incAge()
}
fmt.Printf("Person data: %+v\n", alex)
}