Go面试题18

Posted by     "" on Wednesday, December 25, 2019

Go面试题18

1: f1(), f2(), f3()函数分别返回什么?

func f1() (r int){
    defer func() {
        r++
    }()
    return 0
}

func f2() (r int) {
    t := 5
    defer func() {
        t = t + 5
    }()
    return t
}

func f3() (r int) {
    defer func(r int) {
        r = r + 5
    }(r)
    return 1
}

参考答案及解析

1: 答案: 1, 5, 1. 知识点: 考察defer的理解(可以翻阅go中defer细节避免掉坑这篇文章).

「真诚赞赏,手留余香」

Richie Time

真诚赞赏,手留余香

使用微信扫描二维码完成支付