当前位置: 首页 > news >正文

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)


http://www.mrgr.cn/news/33563.html

相关文章:

  • 微服务学习重点:底层的实现逻辑
  • 探索 Python HTTP 的瑞士军刀:Requests 库
  • 源码解析-Spring Eureka
  • 为什么在Ubuntu下使用VScode开发C++程序时需要手动配置链接库
  • git重置的四种类型(Git Reset)
  • vue中调用全屏方法、 elementUI弹框在全屏模式下不出现问题、多级嵌套弹框蒙层遮挡问题等处理与实现方案
  • 滚雪球学SpringCloud[7.3讲]:分布式事务管理详解
  • 序列化方式二——JSON之Gson
  • CCC SPAKE2+流程解析
  • 【数据结构-栈】力扣1441. 用栈操作构建数组
  • 图书管理系统
  • 什么是数据库视图(View)?视图和表有何区别?
  • 程序员软硬通吃的核心竞争力修炼指南
  • 如何在堆和栈上分别创建一个`QObject`子类对象
  • 用OPenCV分割视频
  • 【米哈游AI大模型“Glossa”正式完成备案,AI加持游戏行业开拓新赛道】
  • typedef的用法
  • 对网页聊天项目进行性能测试, 使用JMeter对于基于WebSocket开发的webChat项目的聊天功能进行测试
  • 机器学习算法那些事 | TPAMI 2024.9 | FeatAug-DETR:通过特征增强丰富DETRs的一对多匹配
  • 【人工智能】在大型活动中的应用案例
  • 带你0到1之QT编程:十七、Http协议实战,实现一个简单服务器和一个客户端进行http协议通信
  • Python 虚拟环境安装使用(Anaconda 完整实操版)
  • stable diffusion 神经网络插件 controlnet 的安装,很详细
  • 自学笔记之TVM编译器框架 ,核心特性,模型优化概述,AI应用落地
  • 【C++初阶】模版进阶
  • 6、论文阅读:水下图像增强基准数据集及其他数据集