函数对象,函数指针,指针函数
2015-09-15 14:40
253 查看
#include<iostream> using namespace std; /* 一个函数对象,即一个重载了括号操作符“()”的对象。 当用该对象调用此操作符时,其表现形式如同普通函数调用一般,因此取名叫函数对象。 */ class FunctionObjType { public: void operator()() { cout << "test function object" << endl; } }; /* 函数指针的使用 */ typedef int* (*function)(int, int,int *);// function f = "要指向的函数",函数类型是 int* f(int a, int b,int *sum) //typedef int (function)(int, int, int *);// function *f = "要指向的函数"函数类型是 int f(int a, int b,int *sum) int* f(int a, int b,int *sum) { cout << "test function poniter" << endl; *sum = a + b; return sum; } typedef int(FUNC1)(int); void show(FUNC1 fun,int a) { fun(a); } int inc(int a) { return(++a); } /* 指针函数,指针函数是指带指针的函数,即本质是一个函数。 函数都有返回类型(如果不返回值,则为无值型),只不过指针函数返回类型是某一类型的指针。 */ int main() { //函数对象的调用 FunctionObjType val; val(); //函数指针的使用 int res; function fun = f; fun(1, 2,&res); show(inc, res); return 0; }
相关文章推荐
- jquery性能优化的十种方法
- MRC 下block 小结
- hibernate中使用fetch来决策性能方案
- 记录BVT自动化测试结果的函数WriteBVTLog
- 集合
- View的touch事件
- Android学习笔记——SAX解析XML
- 使用Wireshark实时抓包Android
- mysql 更改引擎
- Android Studio -使用 Gradle 打包多版本APK
- BZOJ 2502 清理雪道 最小流
- C Macro UG
- Synchronise time with ntp server in Linux
- 修复linux密码
- JVM常用调优参数
- 微信公众号支付(三):页面调用微信支付JS并完成支付
- mina自定义编解码器接收处理byte数组(同时解决数据传输中的粘包、缺包问题)
- javascript中alert()与console.log()的区别
- 在编程中突然的理解
- THINKPHP判断更新是否成功的正确方法