结构体构造函数
简单记录一下 结构体**构造函数 **使用方法,在结构体赋值时使用。
构造函数即 返回一个结构体变量的函数 <很多语言为内置函数,golang与众不同 --!>
package main
import "fmt"
// 声明结构体
type student struct {
name string
age int
grades float64
}
// 构造函数 ——> 以new开头
// 返回 结构体 vs 结构体指针
// 当结构体较大时 使用结构体指针,减少程序内存开销
func newStudent(name string,age int,grades float64) student {
return student{
name: name,
age: age,
grades: grades,
}
}
// 指针结构体
func newStudent(name string,age int,grades float64) *student {
return &student{
...
}
func main() {
p1 := newStudent("侠奢",20,99.9999)
p2 := newStudent("小王",18,59.9999)
fmt.Printf("%s在%d岁时取得了%f的好成绩\n",p1.name,p1.age,p1.grades)
fmt.Printf("%s在%d岁时取得了%f的好成绩\n",p2.name,p2.age,p2.grades)
}