1. 2.3 构造函数

结构体没有构造函数,你可以创建一个函数返回一个相应类型的实例代替(类似一个工厂):

func NewSaiyan(name string, power int) *Saiyan {
    return &Saiyan{
        Name: name,
        Power: power,
    }
}

这种模式会导致开发者犯一些错误。另外,这有点轻微的语法变化;其次,让人觉得不好区分。

我们的工厂函数没有必要返回一个指针;下面代码是完全有效的:

func NewSaiyan(name string, power int) Saiyan {
    return Saiyan{
        Name: name,
        Power: power,
    }
}

1.1. 链接

Copyright © studygolang.com 2013 all right reserved,powered by Gitbook该文件修订时间: 2017-07-21 20:21:47

results matching ""

    No results matching ""