• 欢迎访问周知博客,每周记录新知识
  • 祝各位学得开心!!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏吧
go语言问题(作用域)

go语言问题(作用域)

下面选项正确的是? func main() { if a := 1; false { } else if b := 2; false { } else { println(a, b) } } A. 1 2 B. compilation error 答案解析: 参考答案及解析:A。 推荐一篇文章,讲的很详细 https://st……

go语言问题(切片)

go语言问题(切片)

下面这段代码输出什么?为什么? func main() { s1 := []int{1, 2, 3} s2 := s1[1:] s2[1] = 4 fmt.Println(s1) s2 = append(s2, 5, 6, 7) fmt.Println(s1)} 答案解析: 参考答案及解析: [1 2 4] [1 2 4] 我们已经知道,……

go语言问题(defer)

go语言问题(defer)

下面代码输出什么? type Person struct { age int } func main() { person := &Person{28} // 1. defer fmt.Println(person.age) // 2. defer func(p *Person) { fmt.Prin……

go语言问题(闭包)

go语言问题(闭包)

通常,JS 面试,闭包应该是必考的题目。随着越来越多的语言对函数式范式的支持,闭包问题经常出现。在 Go 语言中也是如此。 这是 Go 语言爱好者周刊第 90 期的一道题目。以下代码输出什么? package main import "fmt" func app() func(string) string { t :=……

go语言问题(函数返回值)

go语言问题(函数返回值)

下面代码输出什么? func increaseA() int { var i int defer func() { i++ }() return i } func increaseB() (r int) { defer fu……