随笔分类 - go
摘要:转载自https://www.jianshu.com/p/0a2ebb07da54 非$GOPATH目录下的go mod项目 $ go mod init test $ cat go.mod module test go 1.12 $ go get github.com/jinzhu/gorm $ c
阅读全文
摘要:这是一个求素数的程序,所谓素数就是除了1和自身以外,不能整除其他自然数的数,一个自然数如果不能被其它所有小于它的素数整除也称为素数,本例中就是用这些特性来求素数 设一个从二到无穷大的自然数数据流,逐级递增,先求出最小的素数,拿到该素数作为筛子,然后筛出比筛子大的最小素数,把这个筛选出的素数再次当作筛
阅读全文
摘要:转载自https://www.liwenzhou.com/posts/Go/14_concurrence/ Go语言基础之并发 2017年6月25日 | Golang |3554 阅读 并发是编程里面一个非常重要的概念,Go语言在语言层面天生支持并发,这也是Go语言流行的一个很重要的原因。 Go语言
阅读全文
摘要:channel我们先来看一下通道的解释:channel是Go语言中的一个核心类型,可以把它看成管道。并发核心单元通过它就可以发送或者接收数据进行通讯,这在一定程度上又进一步降低了编程的难度。channel是一个数据类型,主要用来解决go程的同步问题以及协程之间数据共享(数据传递)的问题。gorout
阅读全文
摘要:转载自: https://www.liwenzhou.com/posts/Go/13_reflect/ 本文介绍了Go语言反射的意义和基本使用。 变量的内在机制 Go语言中的变量是分为两部分的: 类型信息:预先定义好的元信息。 值信息:程序运行过程中可动态变化的。 反射介绍 反射是指在程序运行期对程
阅读全文
摘要:reflect.Valueof 到底是个什么? 反射值对象(reflect.Value)提供一系列方法进行零值和空判定,如下表所示。 下面的例子将会对各种方式的空指针进行 IsNil() 和 IsValid() 的返回值判定检测。同时对结构体成员及方法查找 map 键值对的返回值进行 IsValid
阅读全文
摘要:在Go语言的函数中return语句在底层并不是原子操作,它分为给返回值赋值和RET指令两步。而defer语句执行的时机就在返回值赋值操作后,RET指令执行前。具体如下图所示: 在defer函数定义时,对外部变量的引用是有两种方式的,分别是作为函数参数和作为闭包引用。作为函数参数,则在defer定义时
阅读全文
摘要:https://www.jianshu.com/p/354fce23b4f0 切片(slice)是 Golang 中一种比较特殊的数据结构,这种数据结构更便于使用和管理数据集合。切片是围绕动态数组的概念构建的,可以按需自动增长和缩小。切片的动态增长是通过内置函数 append() 来实现的,这个函数
阅读全文
摘要:https://blog.csdn.net/FHD994603831/article/details/92435724 字符类型Golang中没有专门的字符类型,如果要存储单个字符(字母),一般使用byte来保存。字符串就是一串固定长度的字符连接起来的字符序列。Go的字符串是由单个字节连接起来的。也
阅读全文
摘要:https://www.golangtc.com/t/5ad833404ce40d2654053485 小生初学Go,有一点不懂,今天为了知道空结构体到底占多大的空间的时候,去百度说用unsafe.sizeof,但是对于unsafe.sizeof好像和其它语言的sizeof有些不一样? 比如: va
阅读全文
摘要:Golang []byte与string转换的一个误区 https://www.oyohyee.com/post/Note/golang_byte_to_string/ 2019-08-10 23:46:31 610 在实现[]byte转换string的过程中,发现了一个很容易理解错误的地方。 Go
阅读全文
摘要:http://www.cnblogs.com/sunsky303/p/9764910.html https://www.cnblogs.com/wanghui-garcia/p/10568354.html
阅读全文
摘要:转载自https://www.liwenzhou.com/posts/Go/02_datatype/ Go语言基础之基本数据类型 2017年6月18日 | Golang Go语言中有丰富的数据类型,除了基本的整型、浮点型、布尔型、字符串外,还有数组、切片、结构体、函数、map、通道(channel)
阅读全文