上篇已经记录到发送数据到 chanel 的三种情况的代码逻辑,接下来是从 chanel 接收数据的逻辑。 chanrecv 方法 和 chansend 方法十分类似 如果 hchan 为空 if c == nil { i…
标签:go
Go 字符串处理
直接使用“+”: 示例: a := "aa" b := "bb" a = a + b fmt.Println(a) 因为字符串类型在Go中是不可改变的,因此每次操作实际都要新分配字符串,所以在字符串比较多的时候效率不高。…
解决golang编译项目时出现signal: killed
前几天面试一家公司拿到的测试题使用golang开发,在编译过程中发生了一点点小插曲。在本地mac系统上可以通过编译,当在远程Linux服务器上进行编译运行go install命令的时候,会报错signal: killed…
11 Go语言的映射——map
Go语言的映射——map [TOC] 类似其它语言中的哈希表或者字典,以key-value形式存储数据 Key必须是支持==或!=比较运算的类型,不可以是函数、map或slice;value 可以是任意类型。 Map查找…
也许 Go 开发可以更简单!Go += Package Versioning
简评:对于Go来说一直以来依赖包的版本控制上没有一个好的方案,尽管社区诞生了不下十余个解决该问题的工具,但一直以来没有一个官方的支持。这个提案有望在Go的下个版本中看到官方的包版本控制了,去除了GOPATH依赖,同时还引…
Go 译文之词法分析与解析 Part Three
作者:Adam Presley | 地址:https://adampresley.github.io… 译者前言 最近发现我的翻译是越来越随性了,刚开始文章翻译的时候比较拘束,现在更多强调可读性,比如有些对文…
使用 Go 模块
简介 Go 终于要有自己的模块了, 以前只有包, 而模块是包的上一级. 以下是阅读官网上的两篇文章的总结. https://blog.golang.org/using… https://blog.golang…
golang 链表
golang 链表 简介 golang自身实现了一个双向链表 导入 import "container/list" 定义 // 链表元素 type Element func (e *Element) Next() *El…
golang条件编译
开篇 golang中没有类似C语言中条件编译的写法,比如在C代码中可以使用如下语法做一些条件编译,结合宏定义来使用可以实现诸如按需编译release和debug版本代码的需求 #ifndef #define ... #e…
golang项目test的写法
业务代码 package main import "fmt" func sum(a int,b int) int { return a+b } func main() { fmt.Println("hello test"…
dep - Solving failure: No versions/No more versions of xxx
前言 如果你正在使用Golang的dep工具,我相信你可能会遇到这个问题 dep 版本 $ dep version dep: version : devel build date : git hash : go vers…
09Go语言——数组array
Go语言——数组array [TOC] 小结: 数组⻓度必须是常量,且是类型的组成部分。 [2]int 和 [3]int 是不同类型。 ⽀持 “==”、 “!=” 操作符,…