首页 > 其他分享 >指针

指针

时间:2023-01-27 17:23:26浏览次数:35  
标签:oper 函数 int fmt add func 指针

回调函数

package main

import "fmt"

// 把匿名函数作为另一个函数的参数,就叫做回调函数
//设计一个函数,求2个数的加减乘除

func add(a, b int) int { //add: func(int, int) int  //普通函数
	return a + b
}
func oper(a, b int, fun func(int, int) int) int { //oper: func(int, int, func(int, int) int) int //这个就叫高阶函数
	fmt.Println(a, b, fun) //打印3个参数
	res := fun(a, b)
	return res
}
func main() {
	fmt.Printf("add: %T\n", add)
	fmt.Printf("oper: %T\n", oper)

	///////////
	//add普通函数调用
	res1 := add(1, 2)
	fmt.Println(res1)

    ///////////
	//回调函数调用
	res2 := oper(10, 20, add)
	fmt.Println(res2)

}

高阶函数解释:

image-20230127170152846

标签:oper,函数,int,fmt,add,func,指针
From: https://www.cnblogs.com/john5yang/p/17069045.html

相关文章

  • LeetCode盛最多水的容器(/双指针)
    原题解题目约束题解classSolution{public:intmaxArea(vector<int>&height){intl=0,r=height.size()-1;intans=0;......
  • 力扣 264. 丑数 II [堆;多指针]
    264.丑数II给你一个整数 n ,请你找出并返回第 n 个 丑数 。丑数 就是只包含质因数 2、3 和/或 5 的正整数。示例1:输入:n=10输出:12解释:[1,2,3,......
  • C++中的指针和引用
    指针在C++,指针本质上也是一个对象,它存储的是对象的地址,而非值本身。是一个有趣且功能强大的特性。指针的定义指针的定义,使用"*"进行修饰一个变量。int*p1,*p2如上,定......
  • 派生类指针赋值给基类指针
    #include<iostream>usingnamespacestd;//基类AclassA{public:A(inta);public:voiddisplay();protected:intm_a;};A::A(inta):m_a(a){}voidA::displa......
  • 函数指针+返回数组指针遇到的坑的记录
    在手熟函数指针时,偷懒用了前面测试返回数组指针写的函数,想着比书上更复杂可以加深理解,没想到碰上很傻的bug还想了半天。1autogetArr3()->int(*)[5]{2intarr......
  • C++指针类型的局部变量初始化
    编译器一般不会对一般变量进行初始化,当然也包括指针。所以负责初始化指针变量的只有程序员自己。使用未初始化的指针是相当危险的。因为指针直接指向内存空间,所以程序员很......
  • C语言:结构体指针
    #include<stdio.h>main(){structsk{inta;floatb;}data,*p;p=&data;data.a=10;printf("%d\n",(*p).a);printf("%d\n",p->a)......
  • C++ 类的成员函数指针
    classdog{intname;public:dog();voidprintname();};dog::dog(){cout<<"dog构造"<<endl;};voiddog::printname(){cout<<"dog"<<endl;......
  • 智能指针
    主要是用来防止new之后忘了delete的,它负责自动释放所指向的对象,智能指针本质上也是一个类动态内存管理经常会出现两种问题:一种是忘记释放内存,会造成内存泄漏;一种是尚有指......
  • dart win32 字符串指针
    获取窗口标题finalp=malloc<Pointer<Utf16>>(50);//在C语言中其实只需要传入一个字符串的指针就可以了,这里的话,是指针的指针GetWindowText(0x000908A6,p.value......