DoubleLi

qq: 517712484 wx: ldbgliet

  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 :: 管理 ::

2022年6月20日

摘要: 在经过编写 CLI 程序的尝试之后,我们继续回来聊 Go 语言的基础知识。 相信实际写过一些代码之后,会更容易理解。 原计划这期聊 数组和切片。考虑到聊切片时,无论如何绕不开指针和引用的话题,干脆提到前面来。 目录 [TOC] 指针 指针(Pointer)本质上是一个指向某块计算机内存的地址。就像日 阅读全文
posted @ 2022-06-20 15:53 DoubleLi 阅读(1800) 评论(0) 推荐(2)

摘要: 编译自 Custom JSON Marshalling in Go。 我们知道,通过tag,可以有条件地实现定制Go JSON序列化的方式,比如json:",omitempty", 当字段的值为空的时候,我们可以在序列化后的数据中不包含这个值,而json:"-"可以直接不被JSON序列化,如果想被序 阅读全文
posted @ 2022-06-20 15:49 DoubleLi 阅读(462) 评论(0) 推荐(0)

摘要: Go 语言中,函数参数传递采用是值传递的方式。所谓“值传递”,就是将实际参数在内存中的表示逐位拷贝到形式参数中。对于像整型、数组、结构体这类类型,它们的内存表示就是它们自身的数据内容,因此当这些类型作为实参类型时,值传递拷贝的就是它们自身,传递的开销也与它们自身的大小成正比。 但是像 string、 阅读全文
posted @ 2022-06-20 14:09 DoubleLi 阅读(713) 评论(0) 推荐(0)

摘要: 1. 包的概念 Go 语言是使用包来组织源代码的,并实现命名空间的管理。任何源代码文件必须属于某个包。源码文件的第一行有效代码必须是 package pacakgeName 语句,通过该语句声明自己所在的包。 2. 包的特征 所有的 .go 文件,除了空行和注释,都应该在第一行声明自己所属的包。即所 阅读全文
posted @ 2022-06-20 11:34 DoubleLi 阅读(752) 评论(0) 推荐(0)