【转】C/C++ 函数指针与类函数指针
2024-08-22 03:02:33
转自:http://blog.csdn.net/iamshaofa/article/details/17614615
C函数指针
int numAdd(int a, int b)
{
return a+b;
}
int numMinus(int a, int b)
{
return a-b;
} 直接定义一个函数指针
int (*funcTwo)(int, int) = numAdd; 先typedef后使用
typedef int (*PtrFuncTwo)(int, int); int algo(int a, int b , PtrFuncTwo pft)
{
return pft(a, b);
} int main()
{
int a = algo(, , numAdd);
return ;
}
类函数指针
这个语法比较少用,其实我从来没用到过,在万能的C++ Primer里应该也找不到这个语法描述吧。
class CA
{
public:
int caAdd(int a, int b) {return a+b;}
int caMinus(int a, int b){return a-b;};
}; 定义类函数指针类型
typedef int (CA::*PtrCaFuncTwo)(int ,int); 指针赋值
PtrCaFuncTwo pFunction = &CA::caAdd; 使用指针,注意使用括号
CA ab;
int c = (ab.*pFunction) (,);
《C/C++学习指南》 - 我的讲C/C++的教程,一看就懂的教程,所有必须要懂的知识点,来吧! 适用于初学者及三年工作经验以内的同学,配套答疑平台,“让编程变得简单!”。
这本书的附录专门有讲解函数指针的问题。
最新文章
- 12个不可不知的Sublime Text应用技巧和诀窍
- [08]APUE:进程控制
- java使用动态代理来实现AOP(日志记录)
- 2015 Selenium大会
- ylbtech-Unitity-cs:计算阶乘值
- 为DEDE织梦添加XMl网站地图
- UIGestureRecognizer在多层视图中的触发问题
- MyBatis 错误:Invalid bound statement (not found)
- Myeclipse快捷键组合
- java 环境的安装、设置免密登陆、进行hadoop安装、关闭防火墙
- openGL-计算机图形大作业中出现的几个错误及解决
- 输出映射resultMap
- django 与 mysql 勾结指南
- ASP.NET Core MVC中URL和数据模型的匹配
- Spring boot 整合JSP开发步骤
- Swing使用Substance外观包异常问题
- 转: 日期格式参考extjs api文档中的Date类型
- LTR之RankSvm
- jmeter正则表达式提取器--关联
- win7系统自带分区工具,能分出逻辑分区
热门文章
- matplotlib--设置线条颜色及形状
- Oracal 11 g 数据库安装
- 渗透msf工具中andorid被控端的实现
- Django实现cookie&;session以及认证系统
- Mysql的group by语句
- Rpgmaker开发心得(1)且事件
- requirejs初体验
- 随意给一组数,找出满足一下条件的a[i],a[i]左边的数小于等于a[i],a[i]右边的数大于等于a[i]
- NSDictionary打印编码改中文的方法
- 【JAVASCRIPT】获取触发MESSAGE事件的源IFRAME