
Go 入门
CDFMLR
Could Devils Find My Lovely Rabbit?
展开
-
Go语言入门 (Day 5)并发
Go 并发 Go 程 Go 程(goroutine)是由 Go 运行时管理的轻量级线程。 go f(x, y, z) 会启动一个新的 Go 程并执行 f(x, y, z) f, x, y 和 z 的求值发生在当前的 Go 程中,而 f 的执行发生在新的 Go 程中。 Go 程在相同的地址空间中运行,因此在访问共享的内存时必须进行同步。sync 包提供了这种能力,不过在 Go 中并不经常用到,因...原创 2020-04-22 20:41:32 · 249 阅读 · 0 评论 -
Go语言入门 (Day 4) 方法和接口
Go 方法和接口 方法 Go 没有类。不过你可以为结构体类型定义方法。 方法就是一类带特殊的 接收者 参数的函数。 方法接收者在它自己的参数列表内,位于 func 关键字和方法名之间。 package main import ( "fmt" "math" ) type Vertex struct { X, Y float64 } func (v Vertex) Abs() float6...原创 2020-04-20 10:58:43 · 242 阅读 · 2 评论 -
Go语言入门 (Day 3) 更多数据类型
Go 更多类型:指针、struct、slice 和映射 指针 Go 拥有指针。指针保存了值的内存地址。 类型 *T 是指向 T 类型值的指针。其零值为 nil。 var p *int & 操作符会生成一个指向其操作数的指针。 i := 42 p = &i * 操作符表示指针指向的底层值。 fmt.Println(*p) // 通过指针 p 读取 i *p = 21 ...原创 2020-04-20 10:56:06 · 429 阅读 · 0 评论 -
Go语言入门 (Day 2) 流程控制语句
Go 流程控制语句:for、if、else、switch 和 defer § for Go 只有一种循环结构:for 循环。 基本的 for 循环由三部分组成,它们用分号隔开: 初始化语句:在第一次迭代前执行 条件表达式,则前后的;会被去掉,若有:在每次迭代前求值 后置语句:在每次迭代的结尾执行 初始化语句通常为一句短变量声明,该变量声明仅在 for 语句的作用域中可见。 一旦条件表达式的布尔...原创 2020-04-13 10:25:51 · 242 阅读 · 0 评论 -
Go语言入门 (Day 1) 包、变量和函数
Go 包、变量和函数 § 包 每个 Go 程序都是由包构成的。 一般程序从 main 包的 main 函数开始运行,除非有 init 函数。 package main import ( "fmt" "math/rand" ) func main() { fmt.Println("This is a rand int:", rand.Intn(10)) } 输出: This is a r...原创 2020-04-13 10:20:20 · 192 阅读 · 0 评论 -
Go语言入门 (Day 0) Hello, Golang!
Go 语言基础 Go 语言简介(无用的废话 =_=) Go 是一个开源的编程语言,它能让构造简单、可靠且高效的软件变得容易。 我使用 Go 的几个原因: 快速 简洁 严格规范 方便的网络编程 方便的多线程 完备的文档 开源 大多数朋友都不会呀 使用 Go 已经有一段时间了,它给我的几个感觉就是: 要求严格(不能声明不使用的变量,变量类型必须显示转化等) 超方便的多线程! 高效(时间、空间...原创 2020-03-26 20:34:29 · 189 阅读 · 0 评论