Go语言基础必备知识点(一) 变量篇1. 变量声明与其他语言不同,当一个变量被声明之后,系统自动初始化,赋予它该类型的零值:int 为 0、float 为 0.0、bool 为 false、string 为空字符串、指针为 nil 注意:所有的内存在 Go 中都是经过初始化的标准声明var name type变量声明以关键字 var 开头,变量类型 type 后置,行尾无须分号对比 C 语言这样的
1、make()只是用3种内建的引用类型:切片、map和channel。new函数分配内存,make函数初始化。 2、:=只能使用在函数内部。
转载
2017-09-07 16:01:00
33阅读
2评论
make()和new()的区别func new(Type) *Type
func make(t Type, size ...IntegerType) Type都是在堆上分配内存区别一:接收的参数个数不一样从 new() 函数的定义可以看到,它只接收一个参数 —— Type,即要为哪种类型分配内存。而从 make() 函数的定义可以看到,它可以接收多个参数,第一个参数也是 Type,剩下的是可选的整
Go简单介绍(补充)Go是编译型语言,Go的工具链将程序的源文件转变成机器相关的原生二进制指令,这些工具可以通过单一的go命令配合其子命令进行使用,Go原生支持Unicode,所以它可以处理所有国家的语言;包的认识(补充)fmt 包 其中的函数用来格式化输出和扫描输入,gofmt工具将代码以标准格式重写;os包 提供一些函数和变量,以与平台的方式和操作系统打交道;(接上)三、基本知识梳理1、程序的
Go语言知识点总结 目录 Go-开发环境 Go-语言基础 Go-标准库 Go-面向对象 Go-并发 Go-数据库 Go-web框架 Go语言开发文档:https://studygolang.com/pkgdocGO语言中文网:https://studygolang.com/深度开源:https://
转载
2019-04-22 23:48:00
98阅读
Go语言知识点总结
Go语言是一种静态类型、编译型的开源编程语言,由Google开发,专注于简洁、高效和可靠性。它结合了传统的静态编译语言的高效性和动态语言的易用性,适用于开发网络应用、分布式系统和云计算等领域。本文将从以下几个方面对Go语言的知识点进行总结,并给出相应的代码示例。
## 1.基本语法与数据类型
Go语言的基本语法非常简洁,下面是一个示例代码:
```go
package
一、数组package main
import (
"fmt"
)
func main() {
x := [10]int{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}
var y []int
y = x[1:3]
fmt.Printf("%v\n", y)
y = x[:3] //左边不写 代表从0开始
fmt.Printf("%v\n", y)
y = x
转载
2023-07-12 00:08:13
57阅读
Go语言基础之变量和常量Go语言在声明变量的时候,会自动对变量对应的内存区域进行初始化操作。每个变量会被初始化成其类型的默认值,例如: 整型和浮点型变量的默认值为0。 字符串变量的默认值为空字符串。 布尔型变量默认为false。 切片、函数、指针变量的默认为nil。注意事项:函数外的每个语句都必须以关键字开始(var、const、func等)
:=不能使用在函数外。
_多用于占位,表示忽略值。1
基础:1、变量赋值2、常量赋值,itoa使用3、string4、循环和选择结构5、switch语句6、array, slice和map函数:7、函数格式8、函数可以返回多个返回值9、defer的使用(在函数退出时调用)10、panic,recover和defer1、变量赋值var aa = 12a ...
转载
2013-02-28 16:36:00
55阅读
2评论
必须在源文件中非注释的第一行指明这个文件属于哪个包,如:package main。 package main表示一个可独立执行的程序,每个 Go 应用程序都包含一个名为 main 的包。 main 函数是每一个可执行程序所必须包含的,一般来说都是在启动后第一个执行的函数(如果有 init() 函数则
转载
2019-03-23 10:53:00
48阅读
点赞
1评论
一、变量go语言是一门静态类型的编程语言,在编译之前,所有的变量都要声明数据类型。go语言中变量的声明方式主要有两种:var + 变量名 + 数据类型、短变量声明,其中短变量声明只能声明局部变量go语言拥有类型推断类型推断有什么好处:可以明显提升代码的灵活性,使得代码的重构可以更加容易,同时又不会给代码的维护带来额外负担不会损失程序的运行效率对于变量的重声明需要注意的地方由于变量在之前已经声明过了
转载
2023-07-12 00:18:34
43阅读
import包命名 import的包可以给它命名 import l4g "code.google.com/p/log4go" testing的Error和Fatal的区别 Error : Log() + Fail() 即记录当前错误,记录为失败,但是继续执行 Fatal : Log() + FailNow() 即记录当前错误,记录为失败,不继续执行 path.Clean使用 pat...
原创
2022-01-18 14:03:57
120阅读
GO语言基础主要特性语言结构基础语法语言数据类型语言变量语言常量语言运算符函数*循环语句指针*数组和切片结构体*语言范围*语言接口*错误处理*并发*通道 主要特性自动垃圾回收丰富的内置类型函数多返回值错误处理匿名函数和闭包类型和接口并发编程反射语言交互性语言结构GO语言的基础组成部分包声明引入包函数变量语句 & 表达式注释Tip:一个文件夹只能声明一个包名//math1.go
packa
转载
2023-09-01 07:21:36
23阅读
报错及解决
运行:$ go mod vendor,报错:dial tcp 34.64.4.113:443: i/o timeout
解决:$ export GOPROXY=https://goproxy.io,设置GOPROXY环境变量,改一下代理。xxx
资料网址go语言开启go-modulehttps://www.jianshu.com/p/dcb2065436e3
转载
2020-07-05 12:00:00
156阅读
2评论
go语言成为2016年TIOBE年度语言,距离上次TIOBE年度语言至今已经过去7年,在过去的7年里,go语言也得到了广泛的应用,尤其是在开源领域,从docker到kubernetes都使用了go作为开发语言。在这系列文章中,我们将一起来由浅入深学习一下go语言,至少在研究这些流行的开源软件更加得心应手一些。背景go语言是由google在2009年11月10日发布的一门全新的语言,支持面向对象和反
转载
2023-10-09 21:34:39
66阅读
条件测试测试方法:① test EXPRESSION② [ EXPRESSION ]③ [[ EXPRESSION ]]④ COMMAND 退出状态码bash中常用测试整数测试:-gt, 大于-lt, 小于-ne, 不等于-eq, 等于-ge, 大于等于-le,小于等于
原创
2014-12-05 21:27:17
730阅读
一、逃逸分析 逃逸分析把变量合理地分配到它该去的地方,“找准自己的位置”,即使是用new函数申请到的内存,如果编译器发现这块内存在退出函数后就没有使用了,那就分配到栈上,毕竟栈上的内存分配比堆上快很多;反之,即使表面上只是一个普通的变量,但是经过编译器的逃逸分析后发现,在函数之外还有其他的地方在引用,那就分配到堆上,真正地做到 “按需分配”内存逃逸的五种情况: 1. 发送指针的指针或值包含了指针到
原创
2022-05-12 21:00:12
277阅读
十一 同步模式Sync.WaitGroup 同步屏障可以达到并发goroutine的执行屏障的效果,提供了用于创建等待多个并发执行的代码块在达到WaitGroup显式指定的同步条件后,才可继续执行wait调用后的后续代码能力Add和Wait之间必须有严格的happens before关系(1) 对于整个代码块中所创建的全部Add操作,可被严格分割为不交的两个组别A和B,若设置A happens b
原创
2022-05-13 23:19:30
231阅读
软件开发模型常见的软件开发模型有瀑布模型、迭代模型、增量模型、敏捷模型和螺旋模型等。瀑布模型:适用于需求稳定、项目规模较小、开发流程可预测的项目。
开发过程按照线性顺序依次进行,包括需求分析、系统设计、编码、测试和维护等阶段。
注意事项包括需求尽量明确、开发过程严格按照阶段顺序进行、文档化程度高等。迭代模型:适用于需求较为明确但有可能变化的项目。开发过程分为多个迭代阶段,每个迭代阶段包括需求分析、