Golang入门到项目实战 | golang构造函数

Posted 一个热爱编程的通信人

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Golang入门到项目实战 | golang构造函数相关的知识,希望对你有一定的参考价值。

golang没有构造函数的概念,可以使用函数来模拟构造函数的功能。

例如

package main

import "fmt"

type Person struct 
    name string
    age  int


func NewPerson(name string, age int) (*Person, error) 
    if name == "" 
        return nil, fmt.Errorf("name 不能为空")
    

    if age < 0 
        return nil, fmt.Errorf("age 不能小于0")
    
    return &Personname: name, age: age, nil


func main() 
    person, err := NewPerson("tom", 20)
    if err == nil 
        fmt.Printf("person: %v\\n", *person)
    

运行结果

[Running] go run "/Users/guoliang/SynologyDrive/软件开发/go/golang入门到项目实战/goproject/360duote.com/pro01/test.go"
person: tom 20

以上是关于Golang入门到项目实战 | golang构造函数的主要内容,如果未能解决你的问题,请参考以下文章

Golang入门到项目实战 golang匿名函数

Golang入门到项目实战 golang 函数

Golang入门到项目实战 golang方法

Golang入门到项目实战 golang for循环语句

Golang入门到项目实战 golang中的if语句

Golang入门到项目实战 | golang类型定义和类型别名