سازه ها در گو مجموعه ای از فیلدها را تایپ میکنند. اینها برای گروه بندی داده به فرم رکورد مفید هستند.
package main import "fmt"
این نوع سازه person
دو فیلد name
و age
را دارد.
type person struct { name string age int } func main() {
این نحو یک سازه جدید را میسازد.
fmt.Println(person{"Bob", 20})
هنگام ایجاد یک سازه میتوانید فیلد ها را نام گذاری کنید.
fmt.Println(person{name: "Alice", age: 30})
فیلدهای حذف شده صفر-مقدار خواهند بود.
fmt.Println(person{name: "Fred"})
یک پیشوند &
یک اشاره گر به یک ساختار میدهد.
fmt.Println(&person{name: "Ann", age: 40})
دسترسی به فیلدهای یک سازه با نقطه.
s := person{name: "Sean", age: 50} fmt.Println(s.name)
همچنین شما میتونید از نقطه ها در اشاره گرهای سازه استفاده کنید - اشاره گرها به صورت خودکار غیر ارجاعی میشوند.
sp := &s fmt.Println(sp.age)
سازه ها قابل تغییر هستند.
sp.age = 51 fmt.Println(sp.age) }
$ go run structs.go {Bob 20} {Alice 30} {Fred 0} Sean 50 51
<<اشاره گرها---------------------------------------متد ها >>