golang中结构体的初始化方法(new方法)

自定义一个结构体 type Rect struct { x, y float64 width, height float64 } 初始化方法: rect1 := new(Rect) rect2 := &Rect{} rect3 := &Rect{0, 0, 100, 200} rect4 := &Rect{width:100, height:200} 注意这几个变量全部为指向Rect结构的指针(指针变量),因为使用了new()函数和&操作符.而如果使用方法 a := Rect{} 则表示这个是一...阅读全文

阅读:30761 评论:0

Go语言程序测试

最近一直在搞各种测试,然后今天周末翻翻书,发现特价萝卜的书上在测试方面写得挺全的。 这书是之前CU(chinaunix.net)论坛。搞活动得到奖品(还有作者亲笔签名),拿回来都没看完. 因为写得太太太细了,又厚。 参考他的书及官网的文档,再把测试方面的东西过一下还是有点意思的. 这篇主要讲这几点: 一.Testing的几种不同形式 功能测试: TestXxxx(t *testing.T) 基准测试: BenchmarkXxxx(b *testing.B) 样本测试: Example_Xxx()...阅读全文

2015-11-22 13:04 xcltapestry
阅读:9225 评论:0

golang微信支付服务端

一般来说,使用golang主要还是写服务端。所以本文主要讲golang在处理微信移动支付的服务端时的统一下单接口和支付回调接口,以及查询接口。 微信支付流程 下图是微信官网的支付流程描述: 图中红色部分就是微信支付中,我们的系统包括app,后台需要参与的流程。 其中需要后台也就是Server需要参与的流程有三个: 1. 统一下单并返回客户端 2. 异步通知结果回调处理 3. 调用微信支付查询接口 微信所有的接口都是以http RESTFul的API来提供,所以对于server而言其实就是call...阅读全文

2015-12-23 13:14 xyzhaopeng
阅读:13062 评论:1

IntelliJ IDEA开发golang环境配置

看到一篇文章说IntelliJ IDEA开发作为Go的开发环境不错,突然发神经地想试了一下。 谁知道跟着教程走,到后面越来越不对劲,去百度其它教程,谁知道千篇一律。。。 好了下面开始了 首先把GO安装好。。。(自行安装,附上一篇我之前写的MAC安装GO) 安装IntelliJ IDEA,下载地址: https://www.jetbrains.com/idea/download/。 下载go-lang-idea-plugin这个插件,下载地址: https://plugins.jetbrains....阅读全文

2015-11-26 22:50 skytoup
阅读:23915 评论:1

Go的50坑:新Golang开发者要注意的陷阱、技巧和常见错误[2]

目录 初级篇 开大括号不能放在单独的一行 未使用的变量 未使用的Imports 简式的变量声明仅可以在函数内部使用 使用简式声明重复声明变量 偶然的变量隐藏Accidental Variable Shadowing 不使用显式类型,无法使用“nil”来初始化变量 使用“nil” Slices and Maps Map的容量 字符串不会为“nil” Array函数的参数 在Slice和Array使用“range”语句时的出现的不希望得到的值 Slices和Arrays是一维的 访问不存在的Map ...阅读全文

阅读:6384 评论:0

Go的50坑:新Golang开发者要注意的陷阱、技巧和常见错误[1]

感谢原文作者Kyle Quest以及翻译者影风LEY。出处见下: 原文链接:http://devs.cloudimmunity.com/gotchas-and-common-mistakes-in-go-golang/ 译文链接:http://www.shwley.com/index.php/archives/80/以及http://www.shwley.com/index.php/archives/82/。 Go是一门简单有趣的语言,但与其他语言类似,它会有一些技巧。。。这些技巧的绝大部分并不...阅读全文

阅读:2675 评论:0