Go面试题
1.make和new的区别?
new
内置函数new 只接受一个参数,该参数是一个类型而不是值,返回值是该类型新分配为零值的指针。
1 | // The new built-in function allocates memory. The first argument is a type, |
make
内置函数make 只能初始化map、slice、channel类型,与new 一样第一个参数是类型,与new 不同,返回值类型与参数类型一致,而不是该类型的指针。
- slice: 第一个参数为切片类型,第二个参数为切片初始化长度,第三个可选参数为切片的容量不能小于初始化长度。
- map: 第一个参数为