函数指针和lambda函数
函数指针的几种用法
#include<iostream> #include<vector> using namespace std; void add(int a, int b) { cout<<a + b<<" "; } void ForEach(const vector<int>& nums,void (*add)(int a,int b)){ for (int i = 0; i < nums.size() - 1; i++) { add(nums[i], nums[i + 1]); } } int main() { vector<int> nums{ 2,4,5,6,7,8 }; auto function = add;//这里auto的类型是void(*)(int,int) void(*lee)(int, int) = add;//这里的lee就代表名字,可以用lee替换add typedef void(*AddFunction)(int,int);//此处AddFunction就是这种函数指针类型的别名 AddFunction addfunction = add; ForEach(nums, lee); ForEach(nums, function); ForEach(nums, add); ForEach(nums, addfunction ); }
只要有一个函数指针,那么都可以使用lambda
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端