前言 我们都知道 Go 语言中的 slice 具有动态扩容的机制(不知道的同学请先补课 Go 切片) 但是其底层机制是什么呢?本着知其然,知其所以然的探索精神去研究一番。还不是为了应试 手动狗头 go version go1.15.6 windows/amd64 扩容 既然是八股文,哪就先说结论,切 ...
分类:
其他好文 时间:
2021-06-09 10:36:53
阅读次数:
0
一、函数 Go 语言函数定义格式如下: func function_name( [parameter list] ) [return_types] { 函数体 } 函数定义解析: func:函数由 func 开始声明 function_name:函数名称,参数列表和返回值类型构成了函数签名。 par ...
分类:
其他好文 时间:
2021-06-07 20:06:13
阅读次数:
0
前言 很多时候我们都在window上使用goland,并直接使用goland调试go代码。 但是很多时候我们的程序运行在Linux服务器上,虽然可以通过dlv命令行进行手动打断点调试,但是太麻烦了。 因此我查阅资料发现,goland是支持远程调试的,因此写篇文章记录一下。 操作步骤 安装dlv 在L ...
分类:
其他好文 时间:
2021-06-07 20:03:10
阅读次数:
0
1、概述 大多数语言都有“依赖”、“包”等概念,Go语言的依赖处理经历了几次变革 最早的时候,Go所依赖的所有的第三方库都放在GOPATH这个目录下面 从v1.5开始开始引入vendor模式,如果项目目录下有vendor目录,那么go工具链会优先使用vendor内的包进行编译、测试等 从v1.11开 ...
分类:
其他好文 时间:
2021-06-03 17:48:07
阅读次数:
0
PS 参考博文,致谢 :https://www.liwenzhou.com/posts/Go/04_basic/ 流程控制是每种编程语言控制逻辑走向和执行次序的重要部分,流程控制可以说是一门语言的“经脉”。 Go语言中最常用的流程控制有if和for,而switch和goto主要是为了简化代码、降低重 ...
分类:
其他好文 时间:
2021-06-02 17:05:21
阅读次数:
0
变量 Go语言是静态强类型语言,所以变量是有明确类型的。变量实质上就是在内存中的一小块空间,用来存储特定类型的可变数据。如果没有变量我们的程序只能将数值写死都是静态的数据,无法更改,变量可以让我们进行动态的操作。在数学概念中变量表示没有固定的值,可以随时改变的数。例如:除数、减数与被减数。 类型 变 ...
分类:
其他好文 时间:
2021-05-24 17:07:52
阅读次数:
0
https://mp.weixin.qq.com/s/HGfRRO1Acz-sVe_vLau2FA 初学Go语言时常见的小坑:goroutine、panic和recover 原创 博文视点 博文视点Broadview 2020-07-23 ...
分类:
其他好文 时间:
2021-05-24 15:49:09
阅读次数:
0
一、基本介绍 切片是数组的一个引用,因此切片是引用类型,在进行传递时,遵守引用类型的机制 切片的使用和数组类似,如遍历切片,访问切片的元素和求切片长度len(slice)都一样。 切片的长度是可以变化的,因此切片是一个可以动态变化的数组 二、切片的定义 var 切片名 []类型 比如: var a ...
分类:
编程语言 时间:
2021-05-24 15:42:01
阅读次数:
0
学 Go 的时候知道 Go 语言支持并发,最简单的方法是通过 go 关键字开启 goroutine 即可。可在工作中,用的是 sync 包的 WaitGroup,然而这样还不够,当多个 goroutine 同时访问一个变量时,还要考虑如何保证这些 goroutine 之间不会相互影响,这就又使用到了 ...
分类:
其他好文 时间:
2021-05-24 14:14:46
阅读次数:
0
1. 编写 main.go 程序 ` package main import ( "fmt" "os" ) var smr stuMgr //声明一个全局的全局变量学生管理smr // 菜单函数 func showMenu() { fmt.Println(" Welcome to sms! ") f ...
分类:
编程语言 时间:
2021-05-24 13:24:34
阅读次数:
0