A function can be assigned to a struct and in this case we call it method.
Example:
type Person struct{
Name string
Age int}func(p Person)Speak(){
fmt.Println("Hello from "+ p.Name)}funcmain(){
flavio := Person{Age:39, Name:"Flavio"}
flavio.Speak()}
Methods can be declared to be pointer receiver or value receiver.
The above example shows a value receiver, it receives a copy of the struct instance.
This would be a pointer receiver that receives the pointer to the struct instance:
func(p *Person)Speak(){
fmt.Println("Hello from "+ p.Name)}
Find a ton of Web Development projects to learn modern tech stacks
in practice in THE VALLEY OF CODE PRO
I wrote 16 books for beginner software developers,
DOWNLOAD THEM NOW
Every year I organize a hands-on cohort course coding BOOTCAMP
to teach you how to build a complex, modern Web Application in
practice (next edition February-March-April-May 2024)
Learn how to start a solopreneur business on the Internet with SOLO LAB (next edition in 2024)