虾皮Shopee社招Go后端面试题(含详细落地答案).docx

虾皮Shopee社招Go后端面试题(含详细落地答案).docx

虾皮Shopee社招Go后端面试题(含详细落地答案)

一、Go基础核心(一面必考)

1.讲解Go的值传递和引用传递,slice、map、channel传参有什么坑?

参考答案:Go语言里所有参数传递都是值传递,不存在引用传递,只是部分引用类型底层存的是指针,传值后拷贝的是指针地址,所以看起来像引用传递。

基础类型int、string、bool传参是完全拷贝,函数内修改不会影响原变量。

重点说三个高频坑:

1)slice:slice结构体是指针+长度+容量,传参拷贝的是slice结构体。如果函数内只修改切片已有元素,原切片会生效;如果触发扩容,新切片指针地址变更,原切片数据完全不受影响,这是

文档评论(0)

1亿VIP精品文档

相关文档