自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

原创 go使用Iris框架安装或运行报错undefined: blocks.AssetFunc解决方案

会报错误如下:…\pkg\mod\github.com\kataras\iris@v0.0.2\view\blocks.go:76:37: undefined: blocks.AssetFunc…\pkg\mod\github.com\kataras\iris@v0.0.2\view\blocks.go:76:66: undefined: blocks.AssetNamesFunc…\pkg\mod\github.com\kataras\iris@v0.0.2\view\blocks.go:77:10

2023-08-25 13:24:52 607 1

原创 [10]Golang的方法体method

Go中虽没有class,但依旧有method(结构在承担class这个任务)通过显示说明receiver来实现与某个类型的组合只能为同一个包中的类型定义方法Receiver可以是类型的值或者指针不存在方法重载可以使用值或者指针来调用方法,编译器会自动完成转换从某种意义上来说,方法是函数的语法糖,因为receiver其实就是方法所接收的第1个参数(Method Value vs.Method Expression)如果外部结构和嵌入结构存在同名方法,则优先调用外部结构的方法类型别名不会拥有底层类型所附带的方法

2022-07-08 10:55:26 183 3

原创 [09]Golang的结构体struct

Go中的struct 与 C 中 的truct非常相似,并且Go没有class使用type< Name >struct{}定义结构,名称遵循可见性规则支持指向自身的指针类型成员支持匿名结构,可用作成员或定义成员变量匿名结构也可用于map的值可以使用字面值对结构进行初始化允许直接通过指针来读写结构成员相同类型的成员可以直接拷贝赋值支持 == 与 != 比较运算符,但不支持 > 或 <支持匿名字段,本质上是定义了某个类型为名称的字段嵌入结构作为匿名字段看起来像继承,但不是继承可以使用匿名字

2022-07-08 10:52:06 375

原创 [08]Golang的函数体function

func 函数名(传入值) (返回值) {}运行结果:函数使用slice,是对slice的地址拷贝操作运行结果:函数调用数组,仅仅是数值的拷贝是引用类型运行结果:函数可以通过指针,来调用修改值类型运行结果:函数类型的使用(Go语言中一切皆类型)运行结果:匿名函数不可以作为顶级函数,只在别的函数体当中,不能当做最外层函数运行结果:运行结果:三次调用指向的x是同一个x运行结果:的执行方式类似其他语言中的析构函数,在函数体执行结束后按照调用顺序的相反顺序逐个执行即使函数发生严重错误

2022-07-08 10:42:55 230

原创 [07]Golang的map使用

类似其他语言中的哈希表或者字典,以key-value形式存储数据key必须是支持 == 或 != 比较运算的类型,不可以是函数,map或sliceMap查找比线性搜索快很多,但比使用索引访问数据的类型慢100倍Map使用make()创建,支持 := 这种简写方式make([keyType]valueType,cap), cap表示容量,可以省略超出容量时会自动扩容,但尽量提供一个合理的初始值使用 len() 获取元素个数键值对不存在时自动添加,使用delete()删除某键值对使用 for rang

2022-07-08 09:45:02 416

原创 [06]Golang的切片Slice

声明一个空的切片slice运行结果:数组引用切片运行结果:使用make函数写切片运行结果:Slice与底层数组的对应关系运行结果:ResliceAppendReslice时索引以被slice的切片为准虽然切片sa只有3个元素,但是sa的容量包含全部数组从索引开始到尾部的全部运行结果:新切片的长度没有超过容量,则内存地址不变。超过则全部改变运行结果:内存地址不变时,改变数组中一数组,则切片中也会改变运行结果:copy(拷贝切片,被拷贝切片)拷贝Slice个数大于被拷贝Slice时,

2022-07-08 09:35:50 153

原创 [05]Golang的数组array

定义数组的格式:var< varName > [n] < type >, n >= 0数组长度也是类型的一部分,因此具有不同长度的数组为不同类型注意区分指向数组的指针和指针数组数组在Go中为值类型(不是专递地址)数组之间可以使用 == 或 != 进行比较,但不可以使用 < 或 >可以使用new来创建数组,此方法返回一个指向数组的指针Go支持多维数组数组中元素的默认值为0运行结果:数组中未定义的元素为0运行结果:数组中元素的定义只声明下标为19的第20个元素的值,其他为默认值运行结果:省略

2022-07-08 09:24:53 1019

原创 [04]Golang的控制语句

Go虽然保留了指针,但与其他编程语言不同的是,在Go当中不支持指针运算以及“ -> ”运算符,而直接采用“ . ”选择符来操作指针目标对象的成员递增递减语句​ 在Go中,++ 与 - - 是作为语句而并不是作为表达式(++和–符号只能放在右边,++和–)运行结果如下:运行结果:运行结果:运行结果:三个语法都可以配合标签使用标签名区分大小写,若不使用会造成编译错误Break与Continue配合标签可用于多层循环的跳出Goto是调整执行位置,与其他2个语句配合标签的结果并不相同运行结果:.

2022-07-08 09:14:03 69

原创 [03]Golang的常量与运算符

常量的值在编译时就已经确定常量的定义格式与变量基本相同等号右侧必须是常量或者常量的表达式常量表达式中的函数必须是内置函数当定义多个变量,只有前面的变量设置值时,后面未设置的变量与与前面定义的值一样。计算机的存储单位运行结果:Go中的运算符均是从左至右结合优先级(从高到低)^ ! (一元运算符)​ * / % > & &^​ == != < = >​ ......

2022-07-08 08:53:17 123

原创 [02]Golang的类型与变量

基本类型布尔型:bool整型:int/uint8位整型:int8/uint8字节型:byte(uint8别名)零值并不等于空值而是当变量被声明为某种类型后的默认值,通常情况下值类型的默认值为0,bool 为 false,string为空字符串。类型转换Go中不存在隐式转换,所有类型转换必须显式声明转换只能发生在两种互相兼容的类型之间(整型和布尔型不能相互转换)类型转换的格式:ValueA := TypeOfValueA ( ValueB )运行以下代码运行结果:string()表

2022-07-08 08:45:22 128

原创 [01]Golang的基础使用

// : 单行注释/**/ : 多行注释当前package包名为main,程序的入口方法必须为main导入包之后,就可以使用格式 .func() 来对包中的函数进行调用基本数据类型同样可以使用别名,从严格意义上讲type newint int 这里newint 并不能说是int的别名,而是底层 数据结构相同,在这里称为自定义类型,在进行类型转换时依旧需要显使转换,但byte和rune确确实实为uint8 和 int32 的别名,可以进行互相转换。Go语言中,使用大小写来决定该常量,变量,类型,接口,

2022-07-08 08:37:42 348

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除