`

golang的函数

    博客分类:
  • Go
 
阅读更多
package main

import "fmt"

//函数存在的意义:函数是一段代码的封装,把一段逻辑抽象出来封装到函数中, 起个名字,通过函数名调用, 代码结构清晰,简洁

//函数定义
func sum(x int, y int)(ret int){
	return x + y
}

//有参数没有返回值
func f1(x int, y int){
	fmt.Println("f1")
}

//没有参数没有返回值
func f2(){
	fmt.Println("f2")
}

//没参数有返回值
func f3() int{
	ret := 3
	return ret
}

//返回值可以命名也可以不命名
//命名的返回值就相当于在函数中声明了一个变量
func f4(x int, y int)(ret int){
	ret = x + y   //若未命名, 应该 ret := x+y
	return  //使用命名返回值可以省略return后的变量名
}

//无参数有多个返回值
func f5()(int, string){
	return 1, "lft"
}

//参数的类型简写
//当参数中连续多个参数的类型一致时, 可以将非最后一个参数的类型省略
func f6(x, y int, m,n string) int{
	return x + y
}


//可变长参数可传可不传, 必须放在函数参数的最后
func f7(a string, y... int){
	fmt.Println(a)
	fmt.Println(y) //y的类型是slice
}
//Go语言函数没有默认参数的概念

func main(){
	a := sum(1, 2)
	fmt.Println(a)

	m, n := f5()
	fmt.Println(m, n)

	f7("lft")  //lft   []
	f7("lft", 1,2,3,4)  //lft  [1 2 3 4]
}

 

分享到:
评论

相关推荐

    golang函数查询手册.chm

    golang函数查询手册.chm

    通过汇编看golang函数的多返回值问题

    当我们编写一个如下的Golang函数: ```go func one(a int) (int, int) { return a, a + 5 } ``` 这个函数返回两个整数。在汇编中,可以看到Golang并不直接将返回值存储在某个寄存器中,而是通过调用者提供的内存...

    golang函数以及函数和方法的区别.docx

    ### Golang中的函数与方法详解 #### 一、引言 在编程领域,不同语言对“函数”和“方法”的定义可能有所不同。在C/C++、Python和Java等语言中,“函数”和“方法”通常被视为同一概念的不同叫法。然而,在Golang中...

    golang 函数以及函数和方法的详解及区别

    golang 函数以及函数和方法的区别 在接触到go之前,我认为函数和方法只是同一个东西的两个名字而已(在我熟悉的c/c++,python,java中没有明显的区别),但是在golang中者完全是两个不同的东西。官方的解释是,方法...

    golang 函数以及函数和方法的区别.docx

    在 Go 语言中,函数和方法有着明显的区别,这与许多其他编程语言不同。本文将详细介绍 Go 语言中的函数和方法,以及它们之间的差异。 函数在 Go 语言中是最基础的代码组织单元,其定义格式如下: ```go func 函数...

    Golang 函数执行时间统计装饰器的一个实现详解

    ### Golang 函数执行时间统计装饰器实现详解 在现代软件开发中,特别是后端服务领域,性能优化是一项持续性的任务。为了确保系统的稳定性和高效性,开发者常常需要监测各个功能模块的执行效率,其中一个重要指标...

    Golang中函数式编程,并发和泛型的代码生成-Golang开发

    goderive goderive派生了您不想维护的普通golang函数,并使它们保持最新状态。 它通过解析未实现的函数的go代码来执行此操作,然后生成这些函数goderive goderive派生不需要维护的普通golang函数并使它们保持最新...

    goderive:Golang 中函数式编程、并发和泛型的代码生成

    戈德利夫 goderive派生出您不想维护的普通 golang 函数,并使它们保持最新状态。 它通过解析未实现的函数的 go 代码来完成此操作,然后通过从输入参数类型派生它们的实现来为您生成这些函数。例子在下面的代码中, ...

    functional:一个简单的 golang 函数库

    功能性的一个简单的 golang 函数库。 注意:目前接口用于实现“容器”,我不确定这是一个好主意,这个实现可能会改变。去做: [x] 也许 [ ] 要么 [ ] 作家 [ ] 待定 ;)依赖关系只需要来测试断言。

    教程go-study.zip

    【资源简介】 golang语言介绍,安装部署,运行第一个程序及基础介绍,工具介绍,go module,基础...08.golang函数介绍.md 09.golang指针结构体接口.md 10.golang的错误处理.md 11.golang协程.md 12.golang常用函数.md

    golang中便捷使用的助手函数

    golang 方便使用的助手函数

    giveupthefunc:Golang 函数分析器

    Go 函数使用分析。 你真正使用它多少次? ##用法 确定使用一组包调用函数的次数。 您可以使用带有-p标志的正则表达式指定分析范围。 对于此标志匹配的每个包和依赖项,giveupthefunc 将跟踪该包中的所有函数...

    php:通过Golang实现一些PHP函数。 该库没有第三方依赖性

    请注意,由于PHP和Golang函数的机制完全不同,因此不可能100%地实现相同的行为。 最低Go版本要求: 作业系统转到版本Linux 1.9 OSX 1.12 视窗1.13日期/时间功能PHP功能Golang功能微型时间date_add 日期添加date_...

    皮套:保留有用的golang函数和小型库的地方

    皮套放置Mailgun的golang库和工具的地方时钟减少(几乎)替换系统time包以使计划的事件在测试中具有确定性。 有关详细信息,请参见HttpSign HttpSign是一个用于在Web服务之间签名和验证HTTP请求的库。 有关详细信息...

    golang 调用 php7详解及实例

    这包括执行PHP脚本、表达式,设置全局变量,以及实现PHP对Golang函数的回调。这样的跨语言调用机制提供了灵活性,使得开发者可以在Golang程序中利用PHP的特性或现有代码库。不过,需要注意的是,这种交互可能带来...

    Jni-Golang:java调用golang(通过Go1.5共享库)

    1. **编写 Golang 代码**:首先,在 Go 代码中使用 cgo 定义 C 函数,这些函数将作为 Java 与 Golang 交互的接口。确保这些函数遵循 C ABI(应用程序二进制接口),因为 JNI 需要与 C 函数兼容。 ```go package ...

    Golang中如何使用lua进行扩展详解

    将 Golang 函数封装成 `func(L *lua.State) int` 形式的函数。 2. 使用 `SetGlobal` 将该函数注册到全局环境中。 示例代码: ```go func hello(L *lua.State) int { L.Push(lua.LString("Hello from Go!")) ...

    golang-examples:Go(lang)示例-(解释#golang的基础知识)

    如果您需要更多Golang示例,可以在GitHub上查看我的其他go存储库: 展示了如何对Golang函数的执行时间进行基准测试在终端上或gif可视化各种排序算法当前仅包含蛇克隆计算并将其另存为PNG 包含各种Go软件包(例如,...

Global site tag (gtag.js) - Google Analytics