当前位置: 首页 > 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

相关文章:

  • 【文件I/O】文件持久化
  • Zustand selector 发生 infinate loops的原因以及解决
  • git相关操作笔记
  • [免费]微信小程序(高校就业)招聘系统(Springboot后端+Vue管理端)【论文+源码+SQL脚本】
  • Ubuntu 20.04安装gcc
  • USB 驱动开发 --- Gadget 设备连接 Windows 免驱
  • 废品回收小程序搭建,互联网回收行业的特点
  • 如何更改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 基础操作 增删改查