GOLang
linke_linux
这个作者很懒,什么都没留下…
展开
-
Go 语言闭包
代码示例(代码来自网上)package mainimport "fmt"//构造闭包func intSeq() func() int { i := 0 return func() int { i++ return i }}func main() { nextInt := intSeq() //生成闭包 ...原创 2018-09-17 19:07:56 · 309 阅读 · 0 评论 -
类型定义与类型别名
type Myint int //类型定义,相当于新定义了一个类型。type Myint1 =int //类型别名使用区别:type Myint inttype Myint1 =intfunc main(){ var i int=0 var my Myint my =Myint(i)//Myint 相当于一个新的类型,因此需要强制转换。 var ...原创 2019-08-29 13:52:17 · 322 阅读 · 0 评论 -
defer关键字
什么是 deferdefer 是 Go 语言提供的一种用于注册延迟调用的机制,每一次 defer 都会把函数压入栈中,当前函数返回前再把延迟函数取出并执行。1.defer 和panic 一起使用时执行顺序?package main import ( "fmt")func main() { defer_call()}func defer_call() {...原创 2019-09-17 19:04:10 · 223 阅读 · 0 评论 -
new 和make的区别
make使用方法var s[]int:nil切片。需要使用make分配空间。s=make([]int,10)var s=[]int{} 空切片。不需要使用make分配空间。var m map[int] int :nil map,需要使用make分配空间m=make(map[int] int ,10)var m =map[int]int{} 空map,不需要使用make分配...原创 2019-09-18 09:39:07 · 236 阅读 · 0 评论 -
unsafe包的使用
1:求各类型的长度1.var x stringfmt.Println(unsafe.Sizeof(x))//输出16.因为string的底层结构为type stringStruct struct { str unsafe.Pointer len int}2.var s []intfmt.Println(unsafe.Sizeof(s))//输出24.因为切片...原创 2019-09-18 18:31:26 · 117 阅读 · 0 评论 -
beego学习
1.bee命令安装 go get github.com/beego/bee如果设置了GOPATH环境变量就会安装到环境变量的bin 目录下2.创建project在$gopath/src 下运行bee new myapp,在GOPATH的src目录下就会出现一个myapp的项目3.运行项目bee run myapp如果还是在$gopath/src 下运行命令,则会...原创 2019-09-18 22:22:22 · 257 阅读 · 0 评论