Boost库之function
来源:互联网 发布:巨人网络征途视频 编辑:程序博客网 时间:2024/06/04 08:03
Boost.Function库包含了一个类族的函数对象的包装。它的概念很像广义上的回调函数。其有着和函数指针相同的特性但是又包含了一个调用的接口。一个函数指针能够在能以地方被调用或者作为一个回调函数。boost.function能够代替函数指针并提供更大的灵活性。
Boost.Function其语法如下:boost::function<float(intx, int y)>f
如果Function未赋予一个函数或者不合法的函数而被调用,则会抛出一个boost::bad_function_call异常。
#include "stdafx.h"#include <iostream>#include <boost/function.hpp>#include<boost/bind.hpp>using namespace std;//printint print(int a) { cout << a <<endl; return a; } class X{public:X(){};int print(int a) { cout << a <<endl; return a; } };typedef boost::function<int(int a)> FuncPrint;int main(int argc, char* argv[]) { //外部函数boost::function<int(int)>f = print;f(5);//类成员函数,通过bind绑定X x;FuncPrint f2 = bind(&X::print,&x,_1);f2(10);//类成员函数,通过bind绑定,直接调用函数bind(&X::print,&x,_1)(15);//函数赋值不合法时,抛出一个boost::bad_function_call异常try{boost::function<void(char *)> f3;f3("");}catch (boost::bad_function_call &ex){cout<<ex.what()<<endl;}return 0; }
0 0
- boost库之function
- Boost库之function
- Boost库之function的使用
- Boost库之function的使用
- Boost库之function的使用
- boost学习之function
- Boost之function
- boost学习之-function
- boost之function object
- 3.Boost之function
- boost之function使用
- boost function库
- boost::function库简介
- boost库之bind(与function配合使用)
- 【Boost】boost库中function的用法
- boost之function的简单使用
- boost之function的简单使用
- C++学习 boost学习之-function
- VS2017提示 LNK1104 无法打开文件 kernel32.lib
- HBuilder 插件打包时缺少UI模块组件20170510
- JSP内置对象session 常用方法及案例
- iOS 图片加标签
- 神经网络之正则化
- Boost库之function
- 欢迎使用CSDN-markdown编辑器
- jquery选择器的优势
- 开发中各种错误汇总
- 风控技术交流行业群
- 利用 ELK系统分析Nginx日志并对数据进行可视化展示
- DEDECMS后台上传banner图控制图片轮播
- 设置seekbar进度条 进度前后的
- Android DiskLruCache完全解析,硬盘缓存的最佳方案