栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C++易混淆的语法总结(持续更新中)

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C++易混淆的语法总结(持续更新中)

函数指针和指针函数

顾名思义 函数指针本质未指针,指针函数本质为函数
最简单的辨别看函数名最近的指针*号有没有被括号()包含
指针函数:返回值为指针的函数 int *fun():
定义函数指针的几种方法

 void (*funcPtr)(int x);
 typedef void (*FuncPtrType)(int );
 using FP = void (*) (int);
std::function

std::function 是一个可调用对象包装器,是一个类模板,可以容纳除了类成员函数指针之外的所有可调用对象,它可以用统一的方式处理函数、函数对象、函数指针,并允许保存和延迟它们的执行。

//std::function原型定义如下
template
class _LIBCPP_TEMPLATE_VIS function<_Rp(_ArgTypes...)>

使用示例

// 普通函数
int add(int a, int b){return a+b;} 
// lambda表达式
auto mod = [](int a, int b){ return a % b;}
std::function  a = add; 
std::function  b = mod ; 
//在sougou的workflow框架有大量的使用std::function,给出工程上的示例

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/589790.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号