当前位置:网站首页>Go语言中,函数是一种类型
Go语言中,函数是一种类型
2022-07-07 05:25:00 【码二哥】
0 grpc-go、protobuf、multus-cni 技术专栏 总入口
4 grpc、oauth2、openssl、双向认证、单向认证等专栏文章目录
总结(记住下面三句
)
1、
函数
,也是一种类型
(要特别注意
)
2、函数
,可以赋值给变量
(要特别
注意)
3、函数
,可以作为参数
,进行传递
package func5_test
import (
"testing"
"fmt"
)
//声明一个fire函数
func fire() {
fmt.Print("--->this is fire func")
}
func study(str string) {
fmt.Printf("--->I'm studying %s", str)
}
// 测试,函数是否赋值给变量
func TestFuncVariable(t *testing.T) {
// 声明变量f,类型是func类型,函数类型
// 将变量 f 声明为 func() 类型,
// 调用f的时候,实际上调用的是fire函数,此时 f 就被俗称为“回调函数”,
// 此时 f 的值为 nil
var f func()
f = fire
f()
}
// 测试,函数是否赋值给变量
func TestStudy(t *testing.T) {
st := study
st("English")
}
// 测试,函数类型是否可以作为参数进行传递
func learning(f func()) {
fmt.Printf("--->this is running func")
f()
}
func TestFuncParams(t *testing.T) {
f := fire
// 将函数作为参数进行传递
learning(f)
}
边栏推荐
- Practice of implementing cloud native Devops based on rainbow library app
- 探索STEAM艺术设计中的创造力
- [IELTS speaking] Anna's oral learning records Part3
- Unityhub cracking & unity cracking
- IELTS review progress and method use [daily revision]
- Leetcode simple question: find the K beauty value of a number
- [quick start of Digital IC Verification] 14. Basic syntax of SystemVerilog learning 1 (array, queue, structure, enumeration, string... Including practical exercises)
- 【无标题】
- Using nocalhost to develop microservice application on rainbow
- Transformation function map and flatmap in kotlin
猜你喜欢
打通法律服务群众“最后一公里”,方正璞华劳动人事法律自助咨询服务平台频获“点赞”
opencv学习笔记二——图像基本操作
Analyzing the influence of robot science and technology development concept on Social Research
One click deployment of highly available emqx clusters in rainbow
漏洞複現-Fastjson 反序列化
SSM 整合
Deit learning notes
Rainbow combines neuvector to practice container safety management
[quick start of Digital IC Verification] 12. Introduction to SystemVerilog testbench (svtb)
解析机器人科技发展观对社会研究论
随机推荐
rsync远程同步
One click installation of highly available Nacos clusters in rainbow
[quick start of Digital IC Verification] 12. Introduction to SystemVerilog testbench (svtb)
opencv学习笔记三——图像平滑/去噪处理
Leetcode simple question: find the K beauty value of a number
Automatic upgrading of database structure in rainbow
Qinglong panel -- Huahua reading
利用 Helm 在各类 Kubernetes 中安装 Rainbond
Using nocalhost to develop microservice application on rainbow
[quick start of Digital IC Verification] 10. Verilog RTL design must know FIFO
MES系統,是企業生產的必要選擇
【雅思口语】安娜口语学习记录 Part2
It's too true. There's a reason why I haven't been rich
Uniapp mobile terminal forced update function
Rainbond 5.7.1 支持对接多家公有云和集群异常报警
Le système mes est un choix nécessaire pour la production de l'entreprise
Easy to understand SSO
数据中台落地实施之法
饥荒云服管理脚本
Open3D ISS关键点