写点什么

2022-10-26:以下 go 语言代码输出什么?A:1 3 2;B:1 2 3;C:3 1 2;D:3 2 1。 package main import “fmt“ type temp struc

  • 2022-10-26
    北京
  • 本文字数:195 字

    阅读完需:约 1 分钟

2022-10-26:以下go语言代码输出什么?A:1 3 2;B:1 2 3;C:3 1 2;D:3 2 1。 package main import “fmt“ type temp struc

2022-10-26:以下 go 语言代码输出什么?A:1 3 2;B:1 2 3;C:3 1 2;D:3 2 1。


package main
import "fmt"
type temp struct{}
func (t *temp) Add(elem int) *temp { fmt.Println(elem) return &temp{}}
func main() { tt := &temp{} defer tt.Add(1).Add(2) tt.Add(3)}
复制代码


答案选 A。defer tt.Add(1).Add(2)是链式的,Add(1)会直接执行,然后执行 Add(3),最后才会执行 defer 的 Add(2),因此选 A。



发布于: 刚刚阅读数: 3
用户头像

还未添加个人签名 2021-02-15 加入

还未添加个人简介

评论

发布
暂无评论
2022-10-26:以下go语言代码输出什么?A:1 3 2;B:1 2 3;C:3 1 2;D:3 2 1。 package main import “fmt“ type temp struc_golang_福大大架构师每日一题_InfoQ写作社区