Go优雅实现选传参数
option 选项模式已经很常见了 这里不再赘述
-> 场景: 比如一个函数 需要一个当前时间 又想测试的时候控制传入的当前时间
func Demo(t ...time.Time) {
// 如果不传入参数就使用当前时间
// 如果传入就是用传入时间
tt := append(t, time.Now())[0]
...
}
这样适合一个或者比较少的选传参数,如果比较多还是老老实实用option选项模式吧!!
Songzhibin
-> 场景: 比如一个函数 需要一个当前时间 又想测试的时候控制传入的当前时间
func Demo(t ...time.Time) {
// 如果不传入参数就使用当前时间
// 如果传入就是用传入时间
tt := append(t, time.Now())[0]
...
}
这样适合一个或者比较少的选传参数,如果比较多还是老老实实用option选项模式吧!!