Richie Time

喧嚣的城市,宁静的山村,我们是新时代的纤夫.

Go面试题22

Go面试题22 1: 下面的代码有几处语法问题,各个是什么? package main import ( "fmt" ) func main() { var x string = nil if x == nil { x = "default" } fmt.Println(x) } 2: return之后的defer 语句会

Go面试题21

Go面试题21 1: 下面的两个切片声明中有什么区别?哪个更可取? A. var a []int B. a := []int{} 2: A,B, C, D 哪些选项有语法错误? type S struct { } func f(x interface{}) { } func g(x *interface{}){ } func

Go面试题20

Go面试题20 1: 下面这段代码正确的输出是什么? func f() { defer fmt.Println("D") fmt.Println("F") } func main() { f() fmt.Println("M") } A. F M D B. D F M C. F D M 2: 下面代码输出什么? type Person struct { age int } func main() { person :=

Go面试题19

Go面试题19 1: 下面代码段输出什么? type Person struct { age int } func main() { person := &Person{28} // 1. defer fmt.Println(person.age) // 2. defer func(p *Person) { fmt.Println(p.age) }(person) // 3. defer func() { fmt.Println(person.age) }() person.age = 29 } 参考答案及解析 答案: 29 29 28. 变量p

Go面试题17

Go面试题17 1: 下面代码中, x已声明, y没有声明, 判断每条语句的对错. 1. x, _ := f() 2. x, _ = f() 3. x, y :=f() 4. x, y = f() 2: 下面的代码输出什么? func increaseA() int { var