Go语言的传参和传引用

传参和传引用的问题 很多非官方的文档和教材(包括一些已经出版的图书), 对Go语言的传参和引用的讲解 都有很多问题. 导致众多Go语言新手对Go的函数参数传参有很多误解. 而传参和传引用是编程语言的根本问题, 如果这个问题理解错误可能会导致很多问题. 传slice不是传引用! 首先, Go语言的函数调用参数全部是传值的, 包括 slice/map/chan 在内所有类型, 没有传引用的说法. 具体请看Go语言的规范: After they are evaluated, the parameter...阅读全文

2015-09-14 13:29 future_challeng 等
阅读:9138 评论:4

关于Go,你可能不注意的7件事

Go以简洁著称,但简洁中不乏值得玩味的小细节。这些小细节不如goroutine、interface和channel那样"高大上","屌 丝"得可能不经常被人注意到,但它们却对理解Go语言有着重要的作用。这里想挑出一些和大家一起通过详实的例子来逐一展开和理解。本文内容较为基础,适合初学者,高手可飘过:) 一、源文件字符集和字符集编码 Go源码文件默认采用Unicode字符集,Unicode码点(code point)和内存中字节序列(byte sequence)的变换实现使用了UTF-8:一种变长...阅读全文

九月 17, 2015 bigwhite
阅读:6502 评论:0

golang标准库的学习

1.内存分配 new,make(slice,map,channel) 一个返回指针,一个返回类型值 ---------并发 1.使用channel和goroutine开发并行程序的能力。什么是goroutine? 具体统称为线程,进程,协程;分配和释放在堆空间上;仅比分配栈空间多一点消耗。 -----------goroutine func ready(w string, t int) { time.Sleep(time.Duration(t) * time.Second) fmt.Printl...阅读全文

2015-07-19 18:31 ice_201507
阅读:4087 评论:2

Go语言并发之美

http://www.cnblogs.com/yuxingfirst/archive/2012/11/28/2792366.html 简介 多核处理器越来越普及,那有没有一种简单的办法,能够让我们写的软件释放多核的威力?答案是:Yes。随着Golang, Erlang, Scale等为并发设计的程序语言的兴起,新的并发模式逐渐清晰。正如过程式编程和面向对象一样,一个好的编程模式需要有一个极其简洁的内核,还有在此之 上丰富的外延,可以解决现实世界中各种各样的问题。本文以GO语言为例,解释其中内核、...阅读全文

2015-11-09 09:54 blade2001
阅读:1837 评论:1