函数的定义包括以下部分:函数的声明参数返回值函数的特点:无返回值或多返回值无默认参数不支持重载,之后的版本支持一、函数声明一个完整的函数声明,包含以下部分:func关键字函数名参数列表返回值列表/无返回值函数体(大括号内的部分)函数从第一条语句开始执行,碰到return或者执行完最后一条语句,函数结束如果没有声明函数体,可能这个函数是由其他语言实现的, 比如汇编二、参数定义的是形参,调用传的是实参            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-18 20:06:02
                            
                                104阅读
                            
                                                                             
                 
                
                             
         
            
            
            
             在目前接触的几种语言中条件语句都是必不可少的。很难想象没有条件语句要怎么写程序。1.if语句Go语言的条件语句和C++的很像,使用关键词if。 其格式如下:if 表达式为true {   执行语句}和C++的区别是条件表达式不需要用括号括起来。举例:条件表达式为a > 5,如果该表达式的结果为true时,执行后花括号内的语句。 2. if             
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-05-24 10:40:17
                            
                                0阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            1.Go 标记   go程序可以由多个标记组成,可以是关键字,标识符,常量,字符串,符号。如以下Go语句由6个标记组成:     2.    6个标记是(每行一个):2.行分隔符在 Go 程序中,一行代表一个语句结束。每个语句不需要像 C 家族中的其它语言一样以分号;结尾,因为这些工作都将由 Go 编译器自动完成,如果你打算将多            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-11 23:27:07
                            
                                223阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            前言cgo 提供了 golang 和 C 语言相互调用的机制。几乎所有的编程语言都有C语言的影子,当然golang也不例外。可以看到golang的创始者们与C语言有着密切的联系。下面我们将通过快速入门小例子来掌握cgo的基本用法。最简cgo程序真实的cgo程序一般都比较复杂。不过我们可以通过一个小例子,了解一个最简的cgo程序该是什么样的。构造一个最简cgo程序,首先要忽视一些复杂的cgo特性,同            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-11 23:23:49
                            
                                254阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            目录   方法,接口及并发方法接口并发信道结束语  前言: go语言的第四篇文章,主要讲述go语言中的方法,包括指针,结构体,数组,切片,映射,函数闭包等,每个都提供了示例,可直接运行。方法,接口及并发方法方法就是一类带特殊的接收者(struct)参数的函数通过 结构体.方法 调用 示例:type city struct {
    name, address string
}
func (c            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-11-20 21:22:40
                            
                                111阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            最新Go语言急速入门视频教程(七米出品)——接口_哔哩哔哩_bilibili接口是一种类型,一种抽象的类型。接口(interface)定义了一个对象的行为规范,只定义规范不实现,由具体的对象来实现规范的细节。接口本章学习目标了解为什么需要接口以及接口的特点掌握接口的声明和使用掌握接口值的概念掌握空接口的特点及其使用场景在Go语言中接口(interface)是一种类型,一种抽象的类型。相较于之前章节            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-01-13 23:20:32
                            
                                102阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
             1. 什么是原子操作  我们已经知道,原子操作即是进行过程中不能被中断的操作。也就是说,针对某个值的原子操作在被进行的过程当中,CPU绝不会再去进行其它的针对该值的操作。无论这些其它的操作是否为原子操作都会是这样。为了实现这样的严谨性,原子操作仅会由一个独立的CPU指令代表和完成。只有这样才能够在并发环境下保证原子操作的绝对安全。Go语言提供的原子操作都是非侵入式的。它们由标准库代码包            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-11-21 00:17:28
                            
                                103阅读
                            
                                                                             
                 
                
                             
         
            
            
            
             切片诞生的背景数组的长度是固定的并且数组长度属于类型的一部分,所以数组有很多的局限性。 例如:func arraySum(x [3]int) int{
    sum := 0
    for _, v := range x{
        sum = sum + v
    }
    return sum
}
//这个求和函数只能接受[3]int类型,其他的都不支持。             
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-06 17:04:26
                            
                                229阅读
                            
                                                                             
                 
                
                             
         
            
            
            
                    python支持序列类型的数据进行切片,这种方式非常的便捷。        go语言中的数据容器只有数组,但是由于go有点底层,没有办法实现数组的切片,于是添加了一种新的数据类型,叫做切片slice,用于解决数组切片的问题。        简述go语言的切片,实际            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-13 11:05:34
                            
                                119阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            接口(interface)定义了一个对象的行为规范,只定义规范不实现,由具体的对象来实现规范的细节。接口本章学习目标了解为什么需要接口以及接口的特点掌握接口的声明和使用掌握接口值的概念掌握空接口的特点及其使用场景在Go语言中接口(interface)是一种类型,一种抽象的类型。相较于之前章节中讲到的那些具体类型(字符串、切片、结构体等)更注重“我是谁”,接口类型更注重“我能做什么”的问题。接口类型            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-01-21 01:22:21
                            
                                94阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            Go语言函数、数组、切片 Go语言中函数,数组这些都是派生类型,也可以说是复杂类型,能够处理更加复杂的数据。一、函数函数是基本的代码块,用于执行一个任务。Go 语言最少有个 main() 函数。函数声明告诉了编译器函数的名称,返回类型,和参数。Go 语言标准库提供了多种可动用的内置的函数。例如,len() 函数可以接受不同类型参数并返回该类型的长度。如果我们传入的是字符串则返回字符串的长度,如果传            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-21 10:12:22
                            
                                149阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            在一些介绍 sync 包相关的文章中,我们应该也发现了,其中有不少地方使用了原子操作。 比如 sync.WaitGroup、sync.Map 再到 sync.Pool,这些结构体的实现中都有原子操作的身影。 原子操作在并发编程中是一种非常重要的操作,它可以保证并发安全,而且效率也很高。 本文将会深入探讨一下 go 中原子操作的原理、使用场景、用法等内容。什么是原子操作?原子操作是变量级别的互斥锁。            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-01-10 12:52:30
                            
                                99阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            在Go语言中,切片(Slice)是一种数据结构,它是对数组一个连续片段的引用,这个数组称为切片的底层数组。切片和数组的关系是非常紧密的。在Go语言中,数组是一个固定长度的序列,而切片则是一个可变长度的序列。切片是建立在数组之上的,它提供了动态数组的功能,可以根据需要动态地增加或缩小切片的长度。基本使用切片(Slice)是Go语言中非常重要的数据结构之一,它常用于对数组进行操作,提供了方便的动态扩容            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-21 11:10:56
                            
                                52阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            一、函数定义函数是结构化编程中最小的模块单元,日常开发过程中,将复杂的算法过程分解为若干个小任务(代码块),使程序的结构性更清晰,程序可读性提升,易于后期维护和让别人读懂你的代码。编写多个函数的主要目的是将一个需要很多行代码的复杂问题分解为一系列简单的任务(那就是函数)来解决。在实际编程中,我们把重复性的任务抽象成一个函数。和所有的编程语言一样,Go语言支持各种风格的函数。在Go语言中,当函数执行            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-30 16:32:15
                            
                                189阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            今天来聊一下 Go 如何使用 set,本文将会涉及 set 和 bitset 两种数据结构。Go 的数据结构Go 内置的数据结构并不多。工作中,我们最常用的两种数据结构分别是 slice 和 map,即切片和映射。 其实,Go 中也有数组,切片的底层就是数组,只不过因为切片的存在,我们平时很少使用它。除了 Go 内置的数据结构,还有一些数据结构是由 Go 的官方 container 包提供,如 h            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-11 23:22:39
                            
                                155阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            1. strconv包:2. os.Args:获取运行程序时给出的参数,可以通过os包来实现。看代码:package main
import (
    "fmt"
    "os"
    "strconv"
)
func main () {
    for idx, args := range os.Args {
        fmt.Println("参数" + strconv.Ito            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-10-08 07:06:18
                            
                                88阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            Go语言反射,reflectionGo语言中的反射是由 reflect 包提供支持的,它定义了两个重要的类型 Type 和 Value 任意接口值在反射中都可以理解为由 reflect.Type 和 reflect.Value 两部分组成,并且 reflect 包提供了 reflect.TypeOf 和 reflect.ValueOf 两个函数来获取任意对象的 Value 和 Type。反射的类型            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-12 22:30:37
                            
                                101阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            前言:这几天认真的学了一下GO,发现之前的感觉不太对。一开始从进阶入门,上来就是并发、管道、goroutine什么的,确实很容易让人畏惧。经过这几天的学习,从基础入门,我的感觉就是其实Go没有那么难,基本的变量声明赋值语法有点类似于我们学spark时候学的Scala,然后它的指针和C语言也基本是一样的,它的关键字、内置函数等等也和其他语言大致相同。其实有了C语言的基础上手go还是很快的,至于go的            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-30 16:31:55
                            
                                113阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            在编写命令行程序(工具、server)时,需要对命令行参数进行解析,各种编程语言一般都会提供解析命令行参数的方法或库,以便程序员使用。
Go语言中的flag包中,提供了命令行参数解析的功能。概念:命令行参数(或参数):是指运行程序时提供的参数;已定义命令行参数:是指程序中通过 flag.Type 这种形式定义了的参数;非 flag(non-flag)命令行参数(或保留的命令行参数):可以简单理解            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-12 14:19:07
                            
                                184阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            一、orm原生sql之Exec方法Exec方法只能执行 “插入、删除、更新数据” 的sql操作,不能执行查询操作,具体看下面示例: 1.1、原生sql插入数据操作ret, err := o.Raw(`INSERT into article(title, author, read_count) VALUE(?, ?, ?)`, "beego详解", "优选出品", 99999).Exec(            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-12 14:18:56
                            
                                85阅读