Go语言中的常量

1 概述 常量,一经定义不可更改的量。功能角度看,当出现不需要被更改的数据时,应该使用常量进行存储,例如圆周率。从语法的角度看,使用常量可以保证数据,在整个运行期间内,不会被更改。例如当前处理器的架构...
阅读全文

Go语言的接口

Go语言-接口 在Go语言中,一个接口类型总是代表着某一种类型(即所有实现它的类型)的行为。一个接口类型的声明通常会包含关键字type、类型名称、关键字interface以及由花括号包裹的若干方法声明...
阅读全文

Go语言的包管理

1 概述 Go 语言的源码复用建立在包(package)基础之上。包通过 package, import, GOPATH 操作完成。 2 main包 Go 语言的入口 main() 函数所在的包(pa...
阅读全文

Go语言方法规则

Go语言方法规则 根据调用者不同,方法分为两种表现形式:方法(method value)、方法表达式(method expression)。 两者都可像普通函数那样赋值和传参,区别在于 方法 (met...
阅读全文
Go语言中映射表map的使用 函数代码

Go语言中映射表map的使用

1 概述 Go语言中的键值对(key->value)集合,称之为映射map。映射map是变长类型,定义时不需要指定长度。映射map是无序的,遍历是的顺序不可期,原因是底层由hash表实现。 逻辑...
阅读全文

go语言坑之for range

go只提供了一种循环方式,即for循环,在使用时可以像c那样使用,也可以通过for range方式遍历容器类型如数组、切片和映射。但是在使用for range时,如果使用不当,就会出现一些问题,导致程...
阅读全文

Go语言互斥锁

Go语言互斥锁 Go语言的sync包中实现了两种锁 Mutex (互斥锁)和 RWMutex (读写锁),其中 RWMutex 是基于 Mutex 实现的,只读锁的实现使用类似引用计数器的功能。 互斥...
阅读全文

Go语言递归函数

Go语言递归函数 递归,就是在运行的过程中调用自己。 一个函数调用自己,就叫做递归函数。 构成递归需具备的条件: 1、子问题须与原始问题为同样的事,且更为简单。 2、不能无限制地调用本身,须有个出口,...
阅读全文
Go语言的那些坑 函数代码

Go语言的那些坑

1.  背景 Golang是我最喜欢的一门语言,它简洁、高效、易学习、开发效率高、还可以编译成机器码。虽然它一出世,就饱受关注,而且现在在市面上逐渐流行开来,但是,它毕竟是一门新兴语言,还有很多让人不...
阅读全文