Ответ
Референсные типы в Go — это типы, которые хранят ссылку на данные, а не сами данные. К ним относятся:
- Указатели (
*T) - Срезы (
[]T) - Мапы (
map[K]V) - Каналы (
chan T) - Функции (
func) - Интерфейсы (
interface{})
При передаче референсного типа в функцию или присваивании копируется только ссылка, а не данные. Пример:
func modifySlice(s []int) {
s[0] = 100 // Изменение отразится на оригинале
}
func main() {
slice := []int{1, 2, 3}
modifySlice(slice)
fmt.Println(slice) // [100 2 3]
}