摘要: gin框架使用的是定制版本的httprouter,其路由的原理是大量使用公共前缀的树结构,它基本上是一个紧凑的Trie tree(或者只是Radix Tree)。具有公共前缀的节点也共享一个公共父节点。 0x00 Radix Tree 基数树(Radix Tree)又称为PAT位树(Patricia 阅读全文
posted @ 2023-04-13 11:14 MeetA 阅读(134) 评论(0) 推荐(0)
摘要: 0x00 切片 切片(Slice)是一个拥有相同类型元素的可变长度的序列。它是基于数组类型做的一层封装。它非常灵活,支持自动扩容。切片是一个引用类型,它的内部结构包含地址、长度和容量。切片一般用于快速地操作一块数据集合。 0x00 切片的定义 切片的声明: var name []T //name:表 阅读全文
posted @ 2023-04-13 11:14 MeetA 阅读(39) 评论(0) 推荐(0)
摘要: 0x00 map map是一种无序的基于key-value的数据结构,Go语言中的map是引用类型,必须初始化才能使用。 0x00 map的定义 go语言当中map的定义 map[KeyType]ValueType //KeyType:表示键的类型 //ValueType:表示键对应的值的类型。 m 阅读全文
posted @ 2023-04-13 11:14 MeetA 阅读(34) 评论(0) 推荐(0)
摘要: 0x00 数组 go语言中的数组声明的基本语法: // 定义一个长度为3元素类型为int的数组a var a [3]int var 数组名称 [元素数量]元素类型 比如:var a [5]int, 数组的长度必须是常量,并且长度是数组类型的一部分。一旦定义,长度不能变。 [5]int和[10]int 阅读全文
posted @ 2023-04-13 11:14 MeetA 阅读(19) 评论(0) 推荐(0)
摘要: 0x00 标识符与关键字 0x01 标识符 go语言中的标识符是由数字,字母和_(下划线)组成的,并且只能由字母和_开头。eg:abc,_,_abc,abc1 0x02 关键字 关键字是指编程语言中定义好的具有特殊意义的标识符。(关键字和保留字都不建议作为变量名) go语言中常用的25个关键字 br 阅读全文
posted @ 2023-04-13 11:14 MeetA 阅读(43) 评论(0) 推荐(0)
摘要: 0x00 基本数据结构 go语言中,除了基本的整型、浮点型、布尔型、字符串外,还有数组、切片、结构体、函数、map、通道(channel)等。 0x00 整型(int) 整型分为以下两个大类: 按长度分为:int8、int16、int32、int64 对应的无符号整型:uint8、uint16、ui 阅读全文
posted @ 2023-04-13 11:14 MeetA 阅读(55) 评论(0) 推荐(0)