C++函数适配器和函数包装器:让你的函数更灵活

简介: 前言:这次给大家带来的是C++函数适配器和函数包装器,它可以让你的让你的函数更灵活,更加易用

文章目录

一、C++函数适配器

函数适配器: 就是bind函数,操作函数指针,让函数指针能够适应回调函数的参数,简单来说就是让函数指针存在不同的调用形态

1、绑定普通函数

微信截图_20230425211238.png

微信截图_20230425211317.png

2、绑定类中成员函数

微信截图_20230425211603.png

微信截图_20230425211657.png

二、C++函数包装器


函数包装器就是就是把函数指针包装成为一个对象,function


function object(pFunc);

function object=pFunc;

type:函数返回值类型(参数类型),举例包装int sum(int a,int b); type是: int(int,int)


怎么通过包装后的对象调用函数,直接把包装器对象当做函数名即可


1、简单包装

微信截图_20230425211824.png

微信截图_20230425211910.png微信截图_20230425211929.png


2、函数包装器与函数适配器之间的激情

微信截图_20230425212034.png微信截图_20230425212056.png


function info =


bind(printData, placeholders::_3, placeholders::_2, placeholders::_1);


详解参数调整,实际是就是函数包装器的第三个参数是原函数的第一个参数,函数包装器的第二个参数是原函数的第二个参数,函数包装器的第一个参数是原函数的第三个参数


_1代表函数包装器的第几个参数,所处位置代表原函数的第几个参数,这个比较难理解,敲敲代码就明白了


原文链接:https://blog.csdn.net/qq_72157449/article/details/130309186


相关文章
|
1月前
|
存储 并行计算 前端开发
【C++ 函数 基础教程 第五篇】C++深度解析:函数包裹与异步计算的艺术(二)
【C++ 函数 基础教程 第五篇】C++深度解析:函数包裹与异步计算的艺术
39 1
|
1月前
|
数据安全/隐私保护 C++ 容器
【C++ 函数 基础教程 第五篇】C++深度解析:函数包裹与异步计算的艺术(一)
【C++ 函数 基础教程 第五篇】C++深度解析:函数包裹与异步计算的艺术
47 0
|
4天前
|
设计模式 C语言 C++
【C++进阶(六)】STL大法--栈和队列深度剖析&优先级队列&适配器原理
【C++进阶(六)】STL大法--栈和队列深度剖析&优先级队列&适配器原理
|
15天前
|
编译器 C语言 C++
【C++初阶(九)】C++模版(初阶)----函数模版与类模版
【C++初阶(九)】C++模版(初阶)----函数模版与类模版
19 0
|
26天前
|
存储 缓存 C++
C++链表常用的函数编写(增查删改)内附完整程序
C++链表常用的函数编写(增查删改)内附完整程序
|
28天前
|
存储 安全 编译器
【C++】类的六大默认成员函数及其特性(万字详解)
【C++】类的六大默认成员函数及其特性(万字详解)
35 3
|
1月前
|
安全 程序员 C++
【C++ 基本知识】现代C++内存管理:探究std::make_系列函数的力量
【C++ 基本知识】现代C++内存管理:探究std::make_系列函数的力量
101 0
|
1月前
|
算法 程序员 C语言
C++设计哲学:构建高效和灵活代码的艺术
C++设计哲学:构建高效和灵活代码的艺术
60 1
|
1月前
|
存储 安全 C语言
C++中灵活 处理可变参数的多种方式:优缺点、应用场景及示例对比
C++中灵活 处理可变参数的多种方式:优缺点、应用场景及示例对比
75 1
|
1月前
|
设计模式 安全 C++
【C++ const 函数 的使用】C++ 中 const 成员函数与线程安全性:原理、案例与最佳实践
【C++ const 函数 的使用】C++ 中 const 成员函数与线程安全性:原理、案例与最佳实践
71 2