![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
golang
文章平均质量分 72
余功鹏
这个作者很懒,什么都没留下…
展开
-
go 函数使用
转载:https://github.com/astaxie/build-web-application-with-golang/blob/master/zh/02.3.md函数函数是Go里面的核心设计,它通过关键字func来声明,它的格式如下:func funcName(input1 type1, input2 type2) (output1转载 2015-02-03 16:14:03 · 815 阅读 · 0 评论 -
命令行编译运行Go语言时参数代入的问题
转载:http://c2pblog.sinaapp.com/archives/349Golang 主要用于服务器端,于是shell 命令下面的编译运行就显得非常重要。在linux下面搭建好Golang 环境以后,我们就需要用shell来控制go语言了。熟悉shell的人应该都知道在运行shell脚本的时候经常会有代入参数的情况,一般格式是 sh test.sh [param..转载 2015-03-02 10:15:54 · 6282 阅读 · 0 评论 -
理解Golang包导入
转载:http://tonybai.com/2015/03/09/understanding-import-packages/Golang使用包(package)这种语法元素来组织源码,所有语法可见性均定义在package这个级别,与Java 、python等语言相比,这算不上什么创新,但与C传统的include相比,则是显得“先进”了许多。Golang中包的定义和使用转载 2015-04-22 14:51:53 · 1578 阅读 · 0 评论 -
go 类型、变量、常量
转载:http://wklken.me/posts/2014/03/02/02-type-var-const.html基本类型1.基本类型列表类型 长度 说明bool 1 true/false,默认false, 不能把非0值当做true(不用数字代表true/false)byte 1转载 2015-04-18 17:30:56 · 1810 阅读 · 0 评论 -
Go项目的目录结构
转载:http://blog.studygolang.com/2012/12/go%E9%A1%B9%E7%9B%AE%E7%9A%84%E7%9B%AE%E5%BD%95%E7%BB%93%E6%9E%84/项目目录结构如何组织,一般语言都是没有规定。但Go语言这方面做了规定,这样可以保持一致性1、一般的,一个Go项目在GOPATH下,会有如下三个目录:转载 2015-04-22 15:04:36 · 856 阅读 · 0 评论 -
Go语言defer的使用
转载:http://cloudnil.com/2014/05/19/defer-in-go/Go语言中没有类似于java中的try…catch…finally的语句块,但是却有一个非常优雅的defer。defer关键字用来标记最后执行的Go语句,一般用在资源释放、关闭连接等操作,会在函数关闭前调用。多个defer的定义与执行类似于栈的操作:先进后出,最先定义的最后执行。转载 2015-04-14 12:04:33 · 1602 阅读 · 0 评论 -
go defer关键字
转载:https://github.com/tiancaiamao/go-internals/blob/master/ebook/03.4.mddefer关键字defer和go一样都是Go语言提供的关键字。defer用于资源的释放,会在函数返回之前进行调用。一般采用如下模式:f,err := os.Open(filename)if err != nil { pan转载 2015-04-14 11:19:05 · 743 阅读 · 0 评论 -
GOLANG的PANIC和RECOVER
转载:http://0x55aa.sinaapp.com/%E7%AE%97%E6%B3%95-%E7%BC%96%E7%A8%8B/722.htmlhttp://www.cnblogs.com/ghj1976/archive/2013/02/11/2910114.htmlGo没有例如像Java那样的异常机制:不能抛出一个异常。作为代替,它使用了panic和recover机制。转载 2015-04-14 13:52:40 · 1043 阅读 · 0 评论 -
golang的小总结
转载:http://www.liguosong.com/2013/07/07/golang%E7%9A%84%E5%B0%8F%E6%80%BB%E7%BB%93/var 创建变量const 创建常量iota 这个关键字用来声明enum的时候采用,它默认开始值是0,每调用一次加1map 也就是Python中字典的概念,它的格式为map[keyType]v转载 2015-04-29 14:21:23 · 523 阅读 · 0 评论 -
GOLANG笔记-03-控制流
转载:http://wklken.me/posts/2014/03/02/03-control-flow.htmlIF1.说明条件表达式没有括号支持一个初始化表达式(可以是多变量初始化语句)初始化语句中定义的都是只能在block级别中使用的局部变量,不能在block之外使用左大括号必须和条件语句在同一行(必须与if/else在同一行)go转载 2015-04-29 15:52:11 · 310 阅读 · 0 评论 -
Golang 语言基础之八: interface
转载:http://xhrwang.me/2014/12/29/golang-fundamentals-8-interface.html我们知道 Golang 中没有 class 的概念,而是通过 interface 类型转换支持在动态类型语言中常见的 鸭子类型 达到运行时多态的效果。官方文档 中对 Interface 是这样定义的:An interface t转载 2015-04-28 15:32:59 · 455 阅读 · 0 评论 -
Go 语言编译运行的小问题
转载:http://c2pblog.sinaapp.com/archives/355简单谈一谈Go语言的编译运行。golang 和C/C++都是编译型的语言,首先要写好源文件,然后编译,最后运行。这几天在用IDE的时候一直都是一键运行的,没有怎么好好理解编译和运行之间的区别。而在Linux下面则出现了一些小问题不得不重新思考这个区别。虽然说golang编译速度很快,但是转载 2015-03-02 10:14:33 · 1729 阅读 · 0 评论 -
Go语言程序设计的一些规则和注意事项
转载:http://www.jincon.com/archives/257/http://www.liguosong.com/2013/07/07/golang%E7%9A%84%E5%B0%8F%E6%80%BB%E7%BB%93/1、Go编程的风格,可以以组为单位进行申明变量和常量,以及加载包。2、Go语言支持简单的函数,条件和循环风格,把括号都给省掉了3、 大转载 2015-03-02 12:01:40 · 1652 阅读 · 0 评论 -
golang 并发编程基础
转载:http://c2pblog.sinaapp.com/archives/450当今硬件发展迅速,CPU早就变成多核心了,如何处理并发编程以适应多核CPU是每一种现代编程语言做重视的点。golang自出生起就宣扬着并发编程,原生的goroutines和channel 很简洁的支持了复杂的并行操作。http://blog.csdn.net/gdutliuyun827/articl转载 2015-03-02 10:17:13 · 820 阅读 · 0 评论 -
go method使用
转载:https://github.com/astaxie/build-web-application-with-golang/blob/master/zh/02.5.mdmethod现在假设有这么一个场景,你定义了一个struct叫做长方形,你现在想要计算他的面积,那么按照我们一般的思路应该会用下面的方式来实现package mainimport "fm转载 2015-02-03 18:19:21 · 501 阅读 · 0 评论 -
Go 语言中的方法,接口和嵌入类型
转载:http://se77en.cc/2014/05/05/methods-interfaces-and-embedded-types-in-golang/概述在 Go 语言中,如果一个结构体和一个嵌入字段同时实现了相同的接口会发生什么呢?我们猜一下,可能有两个问题:编译器会因为我们同时有两个接口实现而报错吗?如果编译器接受这样的定义,那么当接口调用时编译器要怎么转载 2015-02-04 11:17:26 · 729 阅读 · 0 评论 -
Go 语言中的 Array,Slice,Map 和 Set
转载:http://se77en.cc/2014/06/30/array-slice-map-and-set-in-golang/Array(数组)内部机制在 Go 语言中数组是固定长度的数据类型,它包含相同类型的连续的元素,这些元素可以是内建类型,像数字和字符串,也可以是结构类型,元素可以通过唯一的索引值访问,从 0 开始。数组是很有价值的数据结构,因为它转载 2015-02-03 14:20:20 · 720 阅读 · 0 评论 -
Go 语言方法接受者类型的选择
转载:http://se77en.cc/2014/05/04/choose-whether-to-use-a-value-or-pointer-receiver-on-methods/概述很多人(特别是新手)在写 Go 语言代码时经常会问一个问题,那就是一个方法的接受者类型到底应该是值类型还是指针类型呢,Go 的 wiki 上对这点做了很好的解释,我来翻译一下。何时使用值类型转载 2015-02-04 10:25:30 · 1347 阅读 · 0 评论 -
go struct 类型
转载:https://github.com/astaxie/build-web-application-with-golang/blob/master/zh/02.4.md2.4 struct类型structGo语言中,也和C或者其他语言一样,我们可以声明新的类型,作为其它类型的属性或字段的容器。例如,我们可以创建一个自定义类型person代表一个人转载 2015-02-03 17:39:41 · 513 阅读 · 0 评论 -
Go 语言中的 new() 和 make() 的区别
转载:http://se77en.cc/2014/04/25/the-difference-between-function-new-and-make-in-golang/概述Go 语言中的 new 和 make 一直是新手比较容易混淆的东西,咋一看很相似。不过解释两者之间的不同也非常容易。new 的主要特性首先 new 是内建函数,你可以从 http://gola转载 2015-02-04 15:07:29 · 519 阅读 · 0 评论 -
go 流程控制
转载:https://github.com/astaxie/build-web-application-with-golang/blob/master/zh/02.3.md流程控制流程控制在编程语言中是最伟大的发明了,因为有了它,你可以通过很简单的流程描述来表达很复杂的逻辑。Go中流程控制分三大类:条件判断,循环控制和无条件跳转。ifif也许转载 2015-02-05 12:00:17 · 481 阅读 · 0 评论 -
Go基础
转载:https://github.com/astaxie/build-web-application-with-golang/blob/master/zh/02.2.md定义变量Go语言里面定义变量有多种方式。使用var关键字是Go最基本的定义变量方式,与C语言不同的是Go把变量类型放在变量名后面://定义一个名称为“variableName”,类转载 2015-02-05 16:31:51 · 633 阅读 · 0 评论 -
Go 语言的并发模型--通过通信来共享内存
转载:http://se77en.cc/2014/04/08/share-by-communicating-the-concurrency-slogan-in-golang/概述我一直在找一种好的方法来解释 go 语言的并发模型:不要通过共享内存来通信,相反,应该通过通信来共享内存但是没有发现一个好的解释来满足我下面的需求:通过一个例子来说明最初的问转载 2015-02-05 17:31:17 · 3120 阅读 · 0 评论 -
go 语言并发
并发有人把Go比作21世纪的C语言,第一是因为Go语言设计简单,第二,21世纪最重要的就是并行程序设计,而Go从语言层面就支持了并行。goroutinegoroutine是Go并行设计的核心。goroutine说到底其实就是线程,但是它比线程更小,十几个goroutine可能体现在底层就是五六个线程,Go语言内部帮你实现了这些goroutine之间的内存共享。执行gorou转载 2015-02-06 11:34:31 · 491 阅读 · 0 评论 -
golang的channel使用
转载:http://my.oschina.net/goskyblue/blog/191149channelsample1 close twicech := make(chan bool)close(ch)close(ch) // 这样会panic的,channel不能close两次读取的时候channel提前关闭了ch := make(c转载 2015-05-04 11:25:48 · 2824 阅读 · 0 评论