defer 执行顺序类似栈的先入后出原则(FILO) 一个defer引发的小坑:打开文件,读取内容,删除文件 // 原始问题代码 func testFun(){ // 打开文件 file, err := os.Open(path) defer file.Close() // do something ...
分类:
其他好文 时间:
2019-12-22 12:50:28
阅读次数:
146
Title Programming language Python GOlang Golang 初始 Golang 变量 常量 Golang 基础数据类型 字符串 整型等 Golang 基础数据类型 整型 浮点型 布尔 string Golang指针 值类型和引用类型 Golang 键盘的输入 Go ...
分类:
其他好文 时间:
2019-12-08 01:00:27
阅读次数:
107
1.go的特点 兼具动态语言的开发效率与C,C++,java的性能安全性 ,内置编译器 2.go的安装 go的sdk下载: https://studygolang.com/dl go的IDE下载: https://www.jetbrains.com/go/ 3.go run与go build go ...
分类:
其他好文 时间:
2019-10-27 17:02:34
阅读次数:
101
Go语言中提供的映射关系容器为map,其内部使用散列表(hash)实现。 参考文档 https://www.liwenzhou.com/posts/Go/08_map/ 按照指定顺序遍历map go func main() { rand.Seed(time.Now().UnixNano()) //初 ...
分类:
其他好文 时间:
2019-10-20 20:22:36
阅读次数:
123
1.系统环境 Golang:go version go1.10.3 darwin/amd64 OS:MacOS MongoDB: version: 3.4.4 2.Golang使用MongoDB 使用:gopkg.in/mgo.v2 mgo简介 3.简单使用MongoDB 3.1 数据设计 3.1. ...
分类:
数据库 时间:
2019-08-30 19:15:59
阅读次数:
105
目录 @[toc] 接口的定义和基本操作 接口是一个或者多个接口声明的集合 只要某个类型拥有该接口的所有方法声明,即算实现该接口,无需显示声明实现了哪个接口,这称为structural typing 接口只有方法声明,没有实现,没有数据字段 嵌入接口 接口可以匿名嵌入其他接口,或嵌入到结构中 类型断 ...
分类:
其他好文 时间:
2019-08-23 19:37:25
阅读次数:
101
目录 @[toc] 注意事项 数组在Go中是值类型,不是引用 类型和长度都相同的数组之间可以使用==或者!=进行比较(Go中已经实现了),但是没有 Go支持多维数组 数组定义 Tips 两个数组不能直接赋值 数组定义格式: 数组长度也是类型的一部分,因此不同长度数组为不同的类型 可以用索引初始化下标 ...
分类:
编程语言 时间:
2019-08-23 19:35:20
阅读次数:
92
[toc] 注意事项 goroutine只是官方的超级线程池 高并发性:占用内存小,创建销毁很快 goroutine的简单易用,也在语言层面上给予开发者巨大的便利 并发不是并行,并行是直接利用多核实现多线程的运行,并发是由切换时间片来实现“同时”运行 goroutine奉行通过通信(channel) ...
分类:
其他好文 时间:
2019-08-23 19:23:29
阅读次数:
78
目录 @[toc] 方法的声明和使用 receiver Go中虽没有class,但依旧有method 通过显示说明receiver来实现与某个类型的组合 不存在方法重载 不存在方法重载,像下面这样的情况是不存在的 只能为同一个包中的类型定义方法 receiver可以是类型的值或者指针 可以使用值或者 ...
分类:
其他好文 时间:
2019-08-23 19:16:29
阅读次数:
98
目录 @[toc] Tips Go函数 不支持 嵌套,重载 和 默认参数 但支持以下特性: 无需声明原型,不定长度变参,多返回值,命名返回值参数,匿名函数,闭包 定义函数使用关键字func,并且左大括号不能另起一行 函数定义,不定长变参,传递值类型与引用类型 值类型传递和引用类型传递都是拷贝,但是值 ...
分类:
其他好文 时间:
2019-08-23 19:15:30
阅读次数:
102