随笔分类 - golang
摘要:iota是go语言的常量计数器,只能在常量的表达式中使用。 iota在const关键字出现时将被重置为0。const中每新增一行常量声明将使iota计数一次(iota可理解为const语句块中的行索引)。 使用iota能简化定义,在定义枚举时很有用。 举个例子: const ( n1 = iota
阅读全文
摘要:空白标识符 _ 也被用于抛弃值,如值 5 在:_, b = 5, 7 中被抛弃。 _ 实际上是一个只写变量,你不能得到它的值。这样做是因为 Go 语言中你必须使用所有被声明的变量,但有时你并不需要使用从一个函数得到的所有返回值。
阅读全文
摘要:方式一:使用var关键字,函数内 包内均可使用 var a,b bool var a,b string="hello","world" var a,b,c=5,"hello",true var( a="hello", b="world" c=5 d=true ) 方式二:使用:=定义变量,只能用于函
阅读全文
摘要:普通函数与方法的区别 1.对于普通函数,接收者为值类型时,不能将指针类型的数据直接传递,反之亦然。 2.对于方法(如struct的方法),接收者为值类型时,可以直接用指针类型的变量调用方法,反过来同样也可以。 package main //普通函数与方法的区别(在接收者分别为值类型和指针类型的时候)
阅读全文
摘要:i++和i--在Go语言中是语句,不是表达式,因此不能赋值给另外的变量。此外没有++i和--i
阅读全文
摘要:文档链接:http://www.topgoer.com/%E6%B5%81%E7%A8%8B%E6%8E%A7%E5%88%B6/%E5%BE%AA%E7%8E%AF%E8%AF%AD%E5%8F%A5range.html for 和 for range有什么区别? 主要是使用场景不同 for可以
阅读全文
摘要:文档链接:http://www.topgoer.com/go%E5%9F%BA%E7%A1%80/Slice%E5%BA%95%E5%B1%82%E5%AE%9E%E7%8E%B0.html 页面最下说明了使用range循环切片有一个需要注意的问题: 根据上述结论分析一下下面这道面试题 输出结果:
阅读全文
摘要:文档链接:http://www.topgoer.com/go%E5%9F%BA%E7%A1%80/%E6%8C%87%E9%92%88.html 1.1.5. new new是一个内置的函数,它的函数签名如下: func new(Type) *Type 其中, 1.Type表示类型,new函数只接受
阅读全文
摘要:当一个map变量被创建后,你可以指定map的容量,但是不可以在map上使用cap()方法 代码示例: package main func main() { m := make(map[string]int, 99) cap(m) //error } # command-line-arguments
阅读全文