make、new操作
makemapslicechannelnew
newnew(T)T*TT
new
make(T, args)new(T)slicemapchannelT*Tslicearrayslicenilslicemapchannelmake
make
newmake
图2.5 make和new对应底层的内存分配
零值
关于“零值”,所指并非是空值,而是一种“变量未填充前”的默认值,通常为0。 此处罗列 部分类型 的 “零值”
代码示例:
输出:
参考资料:
golang语言中map的初始化及使用: http://studygolang.com/articles/2379
Go语言中new()和 make()的区别详解: http://www.jb51.net/article/56837.htm
golang深度拷贝map: http://blog.csdn.net/xtxy/article/details/51837400
golang 内置函数new() 和struct{} 初始化的区别: http://studygolang.com/articles/3377
https://github.com/astaxie/build-web-application-with-golang/blob/master/zh/02.2.md