面试题答案
一键面试package main
import "fmt"
// 定义Printer接口
type Printer interface {
Print()
}
// 定义接受不定参数的函数
func printAll(printers ...Printer) {
for _, printer := range printers {
printer.Print()
}
}
你可以通过如下方式测试这个函数:
// 定义一个实现Printer接口的结构体
type MyPrinter struct{}
func (m MyPrinter) Print() {
fmt.Println("This is MyPrinter")
}
func main() {
var p1 Printer = MyPrinter{}
var p2 Printer = MyPrinter{}
printAll(p1, p2)
}