摘要:
标准库概述 标准库的完整列表通过https://gowalker.org/search?q=gorepos查看 unsafe: 包含了一些打破 Go 语言“类型安全”的命令,一般的程序中不会被使用,可用在 C/C++ 程序的调用中 syscall-os-os/exec os: 提供给我们一个平台无关 阅读全文
摘要:
Map 一种元素对 (pair) 的无序集合,给定 key,对应的 value 可以迅速定位,这个结构也称为关联数组或字典(如需要有序请使用结构体) 给定 key,对应的 value 可以迅速定位 声明、初始化和 make 声明 var map1 map[keytype]valuetype var 阅读全文
摘要:
数组与切片 这章我们开始剖析 集合,它是可以包含大量条目 (item) 的数据结构,例如数组、切片和 map。从这看到 Go 明显受到 Python 的影响。 数组有特定的用处,但是却有一些呆板,所以在 Go 语言的代码里并不是特别常见。 相对的,切片确实随处可见的。它们构建在数组之上并且提供更强大 阅读全文
摘要:
概览 Go 是编译型语言,所以函数编写的顺序是无关紧要的;鉴于可读性的需求,最好把 main() 函数写在文件的前面,其他函数按照一定逻辑顺序进行编写(例如函数被调用的顺序) JS 是解释型语言,因此要注意先定义 function 再调用 DRY 事实上,好的程序是非常注意 DRY 原则的,即不要重 阅读全文
摘要:
if-else Go 的 if 不用写括号 if condition1 { // do something } else if condition2 { // do something else } else { // catch-all or default } if 与{要在同一行,} else 阅读全文
摘要:
文件名、关键字与标识符 文件名 不支持大小驼峰,请使用 小写字母+下划线 文件名均由小写字母组成,如 scanner.go 。如果文件名由多个部分组成,则使用下划线 _ 对它们进行分隔,如 scanner_test.go 。文件名不包含空格或其他特殊字符。 源文件大小 一个源文件可以包含任意多行的代 阅读全文
摘要:
Go 调试 在合适的位置使用打印语句输出相关变量的值(print/println 和 fmt.Print/fmt.Println/fmt.Printf 在 fmt.Printf 中使用下面的说明符来打印有关变量的相关信息: 1.在合适的位置使用打印语句输出相关变量的值(print/println 和 阅读全文
摘要:
平台与架构 编译器支持的环境 Linux FreeBSD Mac OS X(也称为 Darwin) 编译器版本 有 2 个版本的编译器:Go 原生编译器 gc 和非原生编译器 gccgo,其中,gc 版本的编译器已经被移植到 Windows 平台上,并集成在主要发行版中,你也可以通过安装 MinGW 阅读全文
摘要:
起源与发展 2010 年 5 月:谷歌投入使用 官网的首页有一个功能叫做 Go Playground,是一个 Go 代码的简单编辑器的沙盒,它可以在没有安装 Go 语言的情况下在你的浏览器中编译并运行 Go 语言的主要特性与发展的环境和影响因素 执行速度快但是编译速度并不理想的语言:C++ 编译速度 阅读全文