Golang笔记

1.

数组是值类型,赋值和传参会复制整个数组,而不是指针。
切片是引用类型,赋值和传参都会复制指针,而不是数据。

2.

函数的参数有两种传递方式,按值传递和按引用传递。按值传递是指在调用函数时将实际参数复制一份传递到函数中,这样在函数中如果对参数进行修改,将不会影响到原来的实际参数。按引用传递是指在调用函数时将实际参数的地址直接传递到函数中,那么在函数中对参数所进行的修改,将影响到原来的实际参数。

引用类型(slice、map、interface、channel)都默认使用引用传递

3.

切片传入方法中,如果方法内部没有对切片进行扩容,那么切片的修改会影响到原切片,如果方法内部对切片进行了扩容,那么切片的修改不会影响到原切片。

defer

  1. 延迟执行,在当前栈退出时执行
  2. 一般用于资源清理工作
  3. 解锁、关闭文件
  4. 多次调用defer,执行时类似于栈的机制:先进后出

Golang笔记
https://zouhualu.github.io/20230728/Golang笔记/
作者
花鹿
发布于
2023年7月28日
许可协议