golang 匿名结构体可以作为函数参数传递吗
时间: 2023-06-25 17:03:37 浏览: 266
C# 使用匿名函数解决EventHandler参数传递的难题
是的,匿名结构体可以作为函数参数传递。在函数定义时,可以将参数类型声明为匿名结构体类型,然后在函数调用时将实际参数传递给该函数即可。以下是一个简单的示例:
```
package main
import "fmt"
func printPerson(person struct {
name string
age int
}) {
fmt.Printf("Person name is %s, age is %d\n", person.name, person.age)
}
func main() {
person := struct {
name string
age int
}{
name: "John",
age: 25,
}
printPerson(person)
}
```
在这个例子中,我们定义了一个匿名结构体类型,包含两个字段:`name` 和 `age`。然后我们定义了一个函数 `printPerson`,该函数接受一个参数,其类型为该匿名结构体类型。在 `main` 函数中,我们创建了一个该结构体类型的实例,并将其传递给 `printPerson` 函数。输出结果为:
```
Person name is John, age is 25
```
阅读全文