随笔分类 - GO语言
摘要:Proj app controllers jobs models view user xxx.html init.go conf message public img js css html controllers jobs models view user xxx.html init.go use
阅读全文
摘要:当我们执行 go get golang.org/x/tools/cmd/goimports 会报错package golang.org/x/tools/cmd/goimports: unrecognized import path "golang.org/x/tools/cmd/goimports"
阅读全文
摘要:转自:http://tonybai.com/2012/09/26/interoperability-between-go-and-c/ Go有强烈的C背景,除了语法具有继承性外,其设计者以及其设计目标都与C语言有着千丝万缕的联系。在Go与C语言互操作(Interoperability)方面,Go更是
阅读全文
摘要:1 GO嵌入luajit需要用到cgo,使用cgo需要安装gcc,在windows上下载MinGW-W64安装上配置好环境变量就可以 2 gcc编译luajit,生成.a文件. 把LuaJIT-2.0.4\src下面的makefile里面的BUILDMODE= mixed注释掉,同时打开BUILDM
阅读全文
摘要:1 不缓存的channel 以最简单方式调用make函数创建的时一个无缓存的channel,但是我们也可以指定第二个整形参数,对应channel的容量。如果channel的容量大于零,那么该channel就是带缓存的channel 2 缓存的channel 带缓存的Channel内部持有一个元素队列
阅读全文
摘要:自:http://www.cnblogs.com/ghj1976/archive/2013/02/12/2910384.html 1、make用于内建类型(map、slice 和channel)的内存分配。new用于各种类型的内存分配。 2、new本质上说跟其它语言中的同名函数功能一样:new(T)
阅读全文
摘要:1 包编译,eg: 引用pkgtest包 pkgtest包没有任何编译,项目直接导入引用,项目编译时实际是会编译pkgtest并在pkg\windows_386下生成pkgtest.a文件 再编译项目,由于pkgtest已经被编译过,所以不会重新编译 删除pkg\windows_386下生成的pkg
阅读全文
摘要:在Go语言中,我们可以使用type switch语句查询接口变量的真实数据类型,语法如下: x必须是接口类型。 来看一个详细的示例: 语句switch中的value必须是接口类型,变量str的类型为转换后的类型。 If the switch declares a variable in the ex
阅读全文
摘要:规范的语法(不需要符号表来解析) 垃圾回收(独有) 无头文件 明确的依赖 无循环依赖 常量只能是数字 int和int32是两种类型 字母大小写设置可见性(letter case sets visibility) 任何类型(type)都有方法(不是类型) 没有子类型继承(不是子类) 包级别初始化以及明
阅读全文
摘要:一 接口 Go语言中的接口是一些方法的集合(method set),它指定了对象的行为:如果它(任何数据类型)可以做这些事情,那么它就可以在这里使用.EG 二 空接口 在Go语言中,所有其它数据类型都实现了空接口。 如果函数打算接收任何数据类型,则可以将参考声明为interface{} 三 类型转换
阅读全文
摘要:一 方法声明 在函数声明时,在其名字之前放上一个变量,即是一个方法。这个附加的参数会将该函数附加到这种类型上,即相当于为这种类型定义了一个独占的方法 二 基于指针对象的方法 当这个接受者变量本身比较大时,我们就可以用其指针而不是对象来声明方法 三 嵌入结构体扩展类型
阅读全文
摘要:一 defer 当一个函数调用前有defer 时, 那么这个函数的执行会推迟到包含这个 defer 语句的函数即将返回前才执行 defer 调用的函数参数的值 defer 被定义时就确定了 defer 函数内部所使用的变量的值需要在这个函数运行时才确定 有多个defer 调用, 则调用的顺序是先进后
阅读全文
摘要:参数数量可变的函数称为为可变参数函数。典型的例子就是fmt.Printf和类似函数。Printf首先接收一个的必备参数,之后接收任意个数的后续参数。 在声明可变参数函数时,需要在参数列表的最后一个参数类型之前加上省略符号“...”,这表示该函数会接收任意数量的该类型参数。 gopl.io/ch5/s
阅读全文
摘要:1 json.Marshal 把对象转换为JSON的方法 原型如下 func Marshal(v interface{}) ([]byte, error)这个函数接收任意类型的数据 v,并转换为字节数组类型,返回值就是我们想要的JSON数据和一个错误代码。当转换成功的时候,这个错误代码为nil。在进
阅读全文
摘要:1 变量 var声明语句可以创建一个特定类型的变量,然后给变量附加一个名字,并且设置变量的初始值。变量声明的一般语法如下:var 变量名字 类型 = 表达式其中“类型”或“= 表达式”两个部分可以省略其中的一个。如果省略的是类型信息,那么将根据初始化表达式来推导变量的类型信息。如果初始化表达式被省略
阅读全文

浙公网安备 33010602011771号