
Go语言
小布丁的读书笔记
知其然也要知其所以然
展开
-
[Go]程序结构——类型
变量或表达式的类型定义了对应存储值得属性特征,例如 数值类型在内存的存储大小(或者是元素的bit个数),它们在内部是如何表达的,是否支持一些操作符,以及它们自己关联的方法集等。 在任何程序中都会存在一些变量有着相同的内部结构,但是却表示完全不同的概念。例如,一个int类型的变量可以用来表示 循环的索引、或者一个时间戳、或者一个文件描述符、或者一个月份;一个float64类型的变量可以用来表示移动转载 2017-08-16 22:15:36 · 505 阅读 · 0 评论 -
[Go]程序结构——包和文件
Go语言中的包和其它语言中的库或模块的概念类似,目的都是为了支持模块化、封装、单独编译和代码复用。 一个包的源代码保存在一个或多个以.go为文件后缀名的源文件中,通常一个包所在目录路径的后缀是包的导入路径;例如,包gopl.io/ch1/helloworld对应的目录路径是$GOPATH/src/gopl.io/ch1/helloworld 。 每个包都对应一个独立的名字空间。流入,在im转载 2017-08-17 23:19:34 · 2286 阅读 · 0 评论 -
[Go]程序结构——声明
声明语句定义了程序的各种实体对象以及部分或全部属性。Go语言主要有四种类型的声明语句: .var:变量const:常量type:类型func:函数 这里重点讨论变量和类型的声明,后面讨论常量和函数的声明。 一个Go语言编写的程序对应一个或多个以.go为文件后缀名的源文件。每个源文件以包的声明语句开始,说明该源文件是属于哪个包。包声明语句之后是import语句,导入依赖的其它包,然转载 2017-08-10 22:13:13 · 421 阅读 · 0 评论 -
[Go]程序结构——赋值
使用赋值语句可以更新一个变量的值,最简单的赋值语句是将变量放在“=”左边,新值放在右边。 x = 1 // 命名变量的赋值 *p = true // 通过指针间接赋值 person.name = "bob" // 结构体字段赋值 count[x] = count[x] * scale // 数组、转载 2017-08-13 13:45:54 · 444 阅读 · 0 评论 -
[Go]程序结构——作用域
一个声明语句将程序中的实体和一个名字关联,比如一个函数或一个变量。声明语句的作用域是指源代码中刻意有效使用这个名字的范围。 不要将作用域和声明周期混为一谈。作用域对应的是一个源代码的文本区域,它是编译时属性;生命周期是指程序中对象存在的有效时间段,在此时间段内,它可以被程序的其它部分引用,是一个运行时的概念。 语法块是由花括号所包含的一些列语句,就像函数体或循环体那样。块内部声明的对象是无法被转载 2017-08-26 14:30:51 · 578 阅读 · 0 评论 -
[Go]数据类型——开头
虽然从底层而言,所有的数据都是由bit组成,但计算机一般操作的是固定大小的数,如整数、浮点数、bit数组、内存地址等。进一步将这些数组织在一起,就可以表达更多的对象,例如数据包、像素点、诗歌,甚至任何其它对象。Go语言提供了丰富的数据组织形式,这依赖于Go语言内置的数据类型,这些内置的数据类型,兼顾了硬件的特性和表达复杂数据结构的便捷性。 Go语言将数据类型分为4类:基础类型、复合类型、引用类型转载 2017-08-26 14:40:03 · 262 阅读 · 0 评论