关闭golang 的 variable declared but not used和package

觉得golang的 variable declared but not used 和 package imported but not used 在调试代码的时候很不方便!!!!!! 这么多语言中只有golang会有变量不使用, 包引用不用报错的! 有没有方法去掉这两个验证? 再上生产的时候开启验证再改代码?  方法: 修改golang源码, 将error错误改成warn错误(在eclipse上都会显示红色错误, 但warn不影响编译), 重新编译源码. ...阅读全文

开源中国博客 2013-12-18 16:55 lifephp

golang package init可以多处定义

1、在golang中import 包A的时候,会自动隐式的调用该包A的init()函数(i字母小写)。 2、调用顺序:如果该包A又import了别的包B,会优先调用包B的init()函数,最后才调用main包的init()函数。 3、一个包的init()函数可以定义多个,每个都会被调用,调用的顺序按文件名排序。阅读全文

开源中国博客 2013-11-27 17:19 yearnfar

简约语言:golang; CSP式的并发模型

用python开发也有几年了,很喜欢它的简洁。最近在看golang,感觉和python很像,语法简洁,标准类型相识,标准库也是一样的丰富。引用一段文字(http://blog.csdn.net/myan/article/details/2028545): 所谓”魔幻语言“,主要代表作品有C++、Perl、Javascript和Ruby。这些语言拥有丰富的特性,聪明的技 巧和意想不到的奇效,永远有发掘不完的奇技淫巧,总能找到让人匪夷所思的”yet another way"。反过来,“简约语言”崇尚...阅读全文

开源中国博客 2012-10-26 15:12 seewind

使用fswatch工具进行golang的热编译

这个是做什么用的? fswatch是一个工具, 通过检测文件的变化,并触发指定的命令 为什么需要fswatch 写完代码最重要的事情之一, 就是检测一下写好的代码是不是能够工作. 要早提前做的话, 收效越好, 发现的问题越多. 但是如果每次都需要make test, 每次都去编译或者测试的话, 还是挺烦人的. 所以如果能有一个自动化的工具去做的话, 那将是件很爽的事情. 最近我在忙一个项目, 经常性的需要, 停下来, 编译一下代码,看看能不能work. 真是烦死人了. 于是我就写了fs...阅读全文

开源中国博客 2014-01-19 21:17 go-skyblue

访问golang.org官网

解决golang.org不能访问的问题 golang.org被屏蔽了,直接访问不了,解决办法如下: 在 http://ping.eu/ping/ 上ping一下golang.org,获取到IP 然后,在C:\Windows\System32\drivers\etc\hosts中,添加ip和golang.org的对应关系,添加如下一行:   173.194.70.141 golang.org 重新启动下浏览器,就可访问golang.org了.阅读全文

开源中国博客 2014-05-22 13:26 陈好

windows下 sublime text2配置gdb 调试golang

1. 下载gdb for windows   ,点此下载  2.解压后,将目录添加到环境变量path  3. 安装sublimeGdb, 打开sublime text2 ,ctrl+shift+p, install package,选择sublimeGdb,回车 4.配置setting ,   在sublime text2 中,选择菜单 Preferences--Package settings--SublimeGdb--Setting Default  ,设置其下两项。wor...阅读全文

开源中国博客 2013-04-18 14:17 阳光灿烂的日子

golang对象序列化和反序列化

模拟测试1,000, 000条数据 每条10个字节  也就是10M不到的 数据(高度结构化的数据) 过程 1.对象序列化为 byte 2.byte反序为对象 3.gzip压缩byte 测试语言go测试方案: raw byte,json ,bson, msgpack (protostuff需要先做对象配置文件,比较麻烦,通常认为和msgpack性能相当 )结果:msgpack 胜出 大小 gzip压缩后大小 对象到byte耗时 ...阅读全文

开源中国博客 2013-12-29 12:13 咖啡伴侣

golang 调用C语言 Cgo

Cgo 使得Go程序能够调用C代码. cgo读入一个用特别的格式写的Go语言源文件, 输出Go和C程序, 使得C程序能打包到Go语言的程序包中. 举例说明一下. 下面是一个Go语言包, 包含了两个函数 -- Random 和 Seed -- 是C语言库中random和srandom函数的马甲.     package rand     /*     #include <stdlib.h>     */     import "C"     func Random() int {   ...阅读全文

开源中国博客 2013-03-30 10:34 ellice

golang的windows本地开发环境搭建

一:安装goLang 1、下载安装go语言。 官网下载地址: https://code.google.com/p/go/wiki/Downloads?tm=2 选择集成与开发环境对应的.msi安装包 ,如:go1.2.2.windows-amd64.msi 2、安装。 注意:千万不要在路径有中文。否则之后将无法正常使用Go语言开发工具 由于使用msi安装文件,所以Go语言的环境变量已经自动设置好了。 注意:如果下面的HelloWorld程序无法正常运行,或则你使用的是zip包,...阅读全文

开源中国博客 2014-05-27 10:56 momoHuang

golang小程序试验(四)

1. golang的函数类型转换 一个go playground的例子,首先定义一个func类型的别名A,然后定义了A的一个方法。再定义一个函数,此函数的参数与返回值与A相同(这样才能显式转换)。在main中把此函数显式转换为A类型,这样它就可以调用A的方法了。 package main import "fmt" type A func(int, int) func (f A)Serve() { fmt.Println("serve2") } func serve(int,i...阅读全文

开源中国博客 2013-12-11 15:39 壬癸甲乙

golang将byte的int转换

在使用golang做数据传输的时候,会经常遇到byte与int的互转,但golang并没有现成的方法,因此只能通过binary包来解决 所以,需要 :import "encoding/binary",又因为是byte的转换,所以还涉及到了bytes:import "bytes" 代码如下: package main   import (       "bytes"       "encoding/binary"       "fmt"       "strings"   )  ...阅读全文

开源中国博客 2014-03-28 11:44 kuerant

golang小程序试验(三)

1. golang的log模块 golang的log模块可以很方便的创建自己的日志记录,包括日志文件路径,日志格式等都可以自己定义。先来看一个程序: package main import ( "fmt" "log" "os" ) func main() { logfile, err := os.OpenFile("d:\\test.log", os.O_RDWR|os.O_CREATE, 0) if err != nil { fmt.Printf("%s\r\n",...阅读全文

开源中国博客 2013-12-06 14:12 壬癸甲乙

ubuntu下golang+mysql

[GO安装] 本来采用 sudo apt-get install golang 安装,后来发现这样装下来是go1版本,这样后面在编译go-sql-driver插件会有问题。 后来参考参考资料2中所说,从http://www.golangtc.com/download下载对应平台的包。 安装其实很简单,只要简单配置一下环境变量,在.bashrc里增加 export GOROOT=$HOME/bin/go export GOARCH=amd64    #如果是32位就是=386 export...阅读全文

开源中国博客 2014-09-29 10:06 suit

golang之runtime.SetFinaliz

在实际的编程中,我们都希望每个对象释放时执行一个方法,在该方法内执行一些计数、释放或特定的要求,以往都是在对象指针置nil前调用一个特定的方法,golang提供了runtime.SetFinalizer函数,当GC准备释放对象时,会回调该函数指定的方法,非常方便和有效。 参考: Go 语言中手动内存管理 go语言之初始化的构造函数 Go和C如何共享内存资源阅读全文

开源中国博客 2014-06-20 15:11 wkh

自己封装的golang 操作数据库方法

这个是我用Go写的第一个东东,可能还存在些BUG没有测试到。这里主要是提供一个参考。各位可以改写成自己的风格。       在命令行下输入如下两条命令,进行安装 go get github.com/male110/SimpleDb go install github.com/male110/SimpleDb Go语言的数据库操作,只能用Rows.Scan来一次性读取所有列。感觉很不习惯,我还是习惯按照列名来一列列的取数据。所以我自己封装了一个数据结构My...阅读全文

开源中国博客 2013-07-01 19:35 王岩0001