![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
go语言学习笔记
文章平均质量分 58
temporg
这个作者很懒,什么都没留下…
展开
-
Go异常处理
Go异常处理 error error类型是Go内置的接口类型, 定义如下: type error interface { Error() string } Go本身提供的error可以这么使用: err1 := fmt.Errorf("%s", "invoke error...") err2 := errors.New("invoke error...") // 需要引入errors包 我们还可以通过实现接口方法来使用自定义的error, 例: type Divstruct str原创 2021-01-27 17:37:30 · 101 阅读 · 0 评论 -
Go面向对象编程
Go面向对象编程 匿名字段 匿名字段, 从名字来看, 就是没有名称 package main import "fmt" type Person struct { age int name string sex bool } type MPerson struct { Person // 匿名字段 id int } func main() { var mperson MPerson = MPerson{Person{18, "xiaohua", true}, 1} fmt.Prin原创 2021-01-25 16:04:52 · 1208 阅读 · 7 评论 -
Go数据类型 - 2
Go数据类型 - 2 指针类型 Go的指针和C++的指针刚好反过来顺序, 看例子: package main import "fmt" func main() { param := 100 var lp *int = ¶m fmt.Println("data = ", *lp) } Go的*int就是C++的int*, Go的**int就是C++的int** Go的指针和C++的不同处在于: 1. Go的指针没有->运算符, 通过.来调用 2. Go的空指针是如下定原创 2021-01-25 10:40:44 · 78 阅读 · 0 评论 -
Goland多文件编程
Goland多文件编程 前言 我们在写项目的时候肯定会用到多文件编程, 所以这里我们来介绍一下如何用Goland编写多文件 步骤 在工程下面新建src源代码目录 设置go build run kind设置成目录, directory设置成src 选择settings 点击+将src的所在目录加到GOPATH中 同一目录下多文件编程 同一目录下的所有的Go文件必须是同一个package 同一个目录下调用其他文件的函数不需要加package名称 现在举一个栗子: // test.go pac原创 2021-01-24 19:34:24 · 649 阅读 · 0 评论 -
Go的函数
Go的函数 函数的定义格式 用func表示这是Go函数的定义, 类似于python的def func后面紧跟着函数名 函数名之后小括号里面表示形参, 需要写出形参的名称和类型 注: 和变量的定义不一样, 函数定义时候的形参不需要加上var 在形参的定义之后写上返回值的类型 注: 和c++不一样, 和python一样 ,Go的返回值也可以是多个返回值 紧接着大括号里面写函数定义 见例子1: package main import "fmt" func print(param, para原创 2021-01-24 16:23:25 · 184 阅读 · 0 评论 -
Go语言的第一个程序hello world
Go语言的第一个程序hello world 代码 package main import "fmt" // main func main() { fmt.Println("hello world") } 说明 虽然每个语言的第一个程序都是hello world, 但是也是可以从中看出一些语言的特性的 每个go文件开头都需要申明package, 表示该文件属于哪一个package, 一个package可以包含一个或者多个go文件 一个可执行程序必须要包含一个package main, 同时也必须包含原创 2021-01-23 18:59:07 · 110 阅读 · 0 评论 -
Go的语句
Go的语句 if语句 看代码理解 param := 10 if param == 10 { fmt.Println("param == 10") } else { fmt.Println("param != 10") } if/else是判断语句, Go的if和c++一样需要加大括号, 使用else if, 和python一样判断条件不用加小括号 注意: 由于Go语言的强限制, 所以else不可以另起一行, 左大括号也不可以另起一行 Go的if可以加一个赋值/初始化语句, 类似于下面这样:原创 2021-01-24 14:47:22 · 122 阅读 · 0 评论 -
Go数据类型
Go数据类型 iota类型 iota其实就是Go之中的枚举类型, 和c之中的枚举enum差不多, 可以类比理解 iota是默认自增的, 同一行同一个值 package main import "fmt" func main() { const ( param1 = iota param2, param3 = iota, iota ) fmt.Println(param1, param2, param3) // 0 1 1 } Go内置数据类型概览 注: byte是字节, ru原创 2021-01-24 10:20:30 · 71 阅读 · 0 评论 -
Go变量和常量
Go变量和常量 Go变量 Go的变量和C一样, 都是要求必须是字母,数字, 下划线组成, 且数字不能开头, 变量区分大小写, 并且变量名字不可以和关键字重名 Go的关键字大部分如下图: Go变量的声明 Go变量声明是如下的语法 var 变量的名称 变量的类型 例如: var param int Go变量只声明不进行赋值默认是0 注意: Go的语法要求很严格, 变量声明之后不使用这在c++之中顶多就是个warning, 但是在Go之中就会报错, package也是如此, 这点需要注意 同原创 2021-01-23 20:40:34 · 74 阅读 · 0 评论