当前位置: 首页 > article >正文

golang函数类型Function Types

Function types
A function type denotes the set of all functions with the same parameter and result types. The value of an uninitialized variable of function type is nil.

函数类型(function types)是一种特殊的类型,它表示着所有拥有同样的入参类型和返回值类型的函数集合。

参考http的实现,定义了一个HandlerFunc的函数类型

type HandlerFunc func(ResponseWriter, *Request)

一个函数只要满足这些特征,那么它就可以通过如下方式将该函数转换成 HandlerFunc类型

helloHandler := func(writer http.ResponseWriter, request *http.Request) {
	_, _ = fmt.Fprint(writer, "Hello World")
}

//将函数转化为函数类型
handlerFunc := http.HandlerFunc(helloHandler)

在http的实现中,函数类型HandlerFunc充当了一个适配器的作用,适配http中的Handler接口

type HandlerFunc func(ResponseWriter, *Request)

// ServeHTTP calls f(w, r).
func (f HandlerFunc) ServeHTTP(w ResponseWriter, r *Request) {
	f(w, r)
}

http://www.kler.cn/a/380006.html

相关文章:

  • 已解决,部署GPTSoVITS报错‘AsyncRequest‘ object has no attribute ‘_json_response_data‘
  • 云轴科技ZStack在CID大会上分享VF网卡热迁移技术
  • EHOME视频平台EasyCVR萤石设备视频接入平台视频诊断技术可以识别哪些视频质量问题?
  • 数据结构之线段树
  • Ant Design Pro 框架 - fieldProps 的使用
  • 防重方案-订单防重方案笔记
  • 废品回收小程序搭建,互联网回收行业的特点
  • 如何更改Android studio的项目存储路径
  • 强网杯-PWN-baby_heap
  • 清单文件 AndroidManifest.xml
  • 操作系统同步机制(锁、信号量等)
  • 基于大数据的热门旅游景点数据分析系统的设计与实现
  • 2-ARM Linux驱动开发-设备树平台驱动
  • 在Android开发中,如何获取手机设备中的所有文件信息?
  • CubeIDE BUG-project‘hello‘has no explict encoding set hello
  • Windows SEH异常处理讨论
  • 【软考】反规范化技术
  • 代码训练营 day55|卡码网98
  • Jenkins找不到maven构建项目
  • H7-TOOL的CAN/CANFD助手增加帧发送成功标识支持, 继续加强完善功能细节
  • 【GESP】C++一级真题练习(202303)luogu-B3835,每月天数
  • 基于 Transformer 的语言模型
  • 【BUG分析】clickhouse表final成功,但存在数据未合并
  • 十四届蓝桥杯STEMA考试Python真题试卷第二套第一题
  • 贝尔不等式的验证
  • Es 基础操作 增删改查