yyz notes yyz notes
首页
  • RBAC权限设计
  • 架构图标设计
  • 账号体系
  • python基础
  • python高级
  • python模块
  • python设计模式
  • python数据结构与算法
  • django
  • django-DRF
  • flask
  • 直接设计开源pip包
  • 直接设计开源项目
  • python示例题/脚本
  • python面试题
  • golang基础
  • golang高级
  • golang常用组件
  • gin框架
  • es6
  • javascript
  • react
  • vue
  • TypeScript
  • mysql
  • redis
  • minio
  • elasticsearch
  • mongodb
  • 消息队列
  • 自动化测试
  • 操作系统

    • linux
    • windows
  • nginx
  • docker
  • k8s
  • git
  • ldap
  • 学习
  • 面试
  • 心情杂货
  • 实用技巧
  • 友情链接
关于
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

益章

可乐鸡翅
首页
  • RBAC权限设计
  • 架构图标设计
  • 账号体系
  • python基础
  • python高级
  • python模块
  • python设计模式
  • python数据结构与算法
  • django
  • django-DRF
  • flask
  • 直接设计开源pip包
  • 直接设计开源项目
  • python示例题/脚本
  • python面试题
  • golang基础
  • golang高级
  • golang常用组件
  • gin框架
  • es6
  • javascript
  • react
  • vue
  • TypeScript
  • mysql
  • redis
  • minio
  • elasticsearch
  • mongodb
  • 消息队列
  • 自动化测试
  • 操作系统

    • linux
    • windows
  • nginx
  • docker
  • k8s
  • git
  • ldap
  • 学习
  • 面试
  • 心情杂货
  • 实用技巧
  • 友情链接
关于
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • golang基础

    • 初识golang

    • golang基础语法

    • golang流程控制

    • golang函数

      • 普通函数-函数声明(函数定义使用)
      • 普通函数-函数声明调用的内存分析
      • 普通函数-函数细节注意点
      • 普通函数-自定义数据类型(别名)
      • 普通函数-函数的返回值
      • init函数
      • 匿名函数
        • 介绍
        • _定义一个匿名函数_
          • _在定义时调用匿名函数_
          • _将匿名函数赋值给变量_
      • 闭包(Closure)
      • defer(延迟执行语句)
    • golang内置函数

    • golang包

    • golang错误异常处理

    • golang面向对象(结构体)

    • golang文件处理

    • golang并发编程简介

    • golang并发编程-协程

    • golang网络编程

    • 反射 reflect

  • golang高级

  • 常用组件

  • gin

  • golang
  • golang基础
  • golang函数
YiZhang-You
2023-05-24
目录

匿名函数

# 匿名函数

Go语言匿名函数--没有函数名字的函数 (opens new window)

# 介绍

匿名函数,即在需要使用函数时再定义函数,匿名函数没有函数名只有函数体,函数可以作为一种类型被赋值给函数类型的变量,匿名函数也往往以变量方式传递,这与C语言的回调函数比较类似,不同的是,Go语言支持随时在代码里定义匿名函数。

匿名函数是指不需要定义函数名的一种函数实现方式,由一个不带函数名的函数声明和函数体组成,下面来具体介绍一下匿名函数的定义及使用。

# 定义一个匿名函数

匿名函数的定义格式如下:

func(参数列表)(返回参数列表){
    函数体
}
1
2
3

匿名函数的定义就是没有名字的普通函数定义。

# 在定义时调用匿名函数

匿名函数可以在声明后调用,例如:

package main

import "fmt"

func main() {
	// 定义时调用匿名函数
	v1 := func(a int, b int) int {
		return a + b
	}(100, 200)
	fmt.Println(v1)
}
/*
	300
*/
1
2
3
4
5
6
7
8
9
10
11
12
13
14

(100,200),表示对匿名函数进行调用,传递参数为 100,200。

# 将匿名函数赋值给变量

匿名函数可以被赋值,例如:

package main

import "fmt"

func main() {
	// 匿名函数赋值给变量
	v2 := func(a int, b int) int {
		return a - b
	}
	fmt.Println(v2(20, 10))
}
/*
	10
*/
1
2
3
4
5
6
7
8
9
10
11
12
13
14

匿名函数的用途非常广泛,它本身就是一种值,可以方便地保存在各种容器中实现回调函数和操作封装。

编辑 (opens new window)
init函数
闭包(Closure)

← init函数 闭包(Closure)→

最近更新
01
配置yun源
05-24
02
linux-配置python虚拟环境
05-24
03
linux文件目录管理
05-24
更多文章>
Theme by Vdoing | Copyright © 2023-2023 yizhang | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式