坑1的个人理解
方法一:首先确定返回值,返回值=0,接着执行defer,由于返回值匿名,所以defer操作的不是返回值,只是result这个变量,跟返回值一毛钱关系都没有,result++。但返回值没有++。
方法二:首先确定返回值,返回值=0,然后执行defer,由于指定了返回值就是result,所以defer更新result就是更新返回值。result++就是返回值++。
Go语言中defer的一些坑defer语句是Go中一个非常有用的特性,可以将一个方法延迟到包裹该方法的方法返回时执行,在实际应用中,defer语句可以充当其他语言中try…catch…的角色,也可以用来...