![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
golang学习
梦逸灵箭
熬过此关,便可少进。再进再困,再熬再奋,自有亨通精进之日.
展开
-
【Go Time】Go语言 make 与new 的区别
new 函数在官方文档中,new函数的描述如下// The new built-in function allocates memory. The first argument is a type,// not a value, and the value returned is a pointer to a newly// allocated zero value of that type.func new(Type) *Type可以看到,new只能传递一个参数,该参数 为一个任意类型,可原创 2020-10-11 18:11:36 · 209 阅读 · 0 评论 -
【Go Time】Go语言 指针详解
什么是指针请关注原作者公众号:Go编程时光当我们定义一个变量 namevar name string = "Go指针"此时,name 是变量名,它只是编程语言中方便程序员编写和理解代码的一个标签。当我们访问这个标签时,计算机会返回给我们它指向的内存地址里存储的值:Go指针。出于某些需要,我们会将这个内存地址赋值给另一个变量名,通常叫做prt(pointer的简写),而这个变量,我们称之为指针变量。换句话说,指针变量(一个标签)的值是指针,也就是内存地址。根据变量指向的值,是否是内存地址原创 2020-09-22 15:29:33 · 391 阅读 · 0 评论 -
【Go Time】Go语言里的空接口
什么是空接口?空接口是特殊形式的接口类型,普通的接口都有方法,而空接口没有定义任何方法,也因此,我们可以说所有类型都至少实现了空接口。type empty_iface interface { }每一个接口都包含两个属性,一个是值,一个是类型。而对于空接口来说,这两者都是nil,可以用fmt来验证一下。package mainimport "fmt"func main() { var i interface{} fmt.Printf("type:T%,value:v%原创 2020-07-31 16:59:49 · 256 阅读 · 0 评论 -
【Go Time】Go定义变量
变量定义使用var关键字定义变量 var a, b, c bool = true, false, true var s1, s2 string = "hello", "world" var d, e, f, g = 3, 4, true, "string"定义变量可放在函数内,或者直接放包内// 变量在函数内func demo(){ var a int = 30}// 变量在main包内package mainvar ( aa = 56 bb = true原创 2020-07-31 17:01:44 · 361 阅读 · 0 评论 -
【Go Time】Go语言常量定义关键字const
常量函数内定义常量func consts() { const filename = "abc.txt" const a, b = 3, 4 var c int c = int(math.Sqrt(a*a + b*b)) fmt.Println(filename, c)}包内定义常量package mainconst filename = "abc.txt"const()定义const ( filename ..原创 2020-07-31 17:03:13 · 352 阅读 · 0 评论 -
【Go Time】Go语言里的条件语句else、switch
if语句判断if里的条件可以赋值if的条件里赋值的变量作用域就在这个if语句里if contents, err := ioutil.ReadFile(filename); err != nil { fmt.Println(err)} else { fmt.Printf("%s\n", contents)}// 这里会报错。contents 作用域不同// fmt.Printf("%s\n", contents)switch语句switch语句中,每个cas原创 2020-07-31 17:05:57 · 277 阅读 · 0 评论