自学内容网 自学内容网

golang学习笔记7-指针、值类型与引用类型

注:本人已有C,C++,Python基础,只写本人认为的重点。
本节很短,因为go的指针概念,用法(取地址,解引用)和C/C++一样,但还是有些地方需要牢记。
go和C/C++定义指针的语法不同,C/C++的星号在变量类型之后,go的星号在前:var 变量名 *变量类型。
内存通常分为四大块:堆区,栈区,全局区,代码区,这些概念百度了解即可。go中的变量按其内存分配机制,有值类型和引用类型。值类型就是变量直接存储值,通常在栈中存储,引用类型就是变量存放另一个变量的地址,通常在堆中存储。当没有任何变量引用这个地址时,该地址对应的数据空间就成为一个垃圾,由go编译器(GC)来回收,这就是go的垃圾回收机制,避免了C/C++中的内存泄漏问题。
在go中,值类型和引用类型分别有多种,如下:
六个值类型:整数型,浮点型,bool,字符串,数组,结构体
五个引用类型:指针,切片(slice),map,管道(channel),接口(interface)


原文地址:https://blog.csdn.net/weixin_54259326/article/details/142440816

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!