这篇文章主要讲解了“c++中函数指针的介绍”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“c++中函数指针的介绍”吧!
成都创新互联公司致力于互联网网站建设与网站营销,提供成都网站设计、做网站、网站开发、seo优化、网站排名、互联网营销、微信小程序定制开发、公众号商城、等建站开发,成都创新互联公司网站建设策划专家,为不同类型的客户提供良好的互联网应用定制解决方案,帮助客户在新的全球化互联网环境中保持优势。
指向函数的指针:
一个函数在编译时被分配一个入口地址,这个函数的入口地址被称为函数的指针。
与数组名代表数组首元素地址类型,函数名代表该函数的入口地址。
定义形式如下:
数据类型 (*指针变量名)(函数参数列表)
注意:
1.int (*p)(int ,int ) 表示定义一个指向函数的指针变量p,它不是固定指向哪一个函数,而只是表示定义了这样一个类型的变量,它是专门来存放函数的入口地址的,在程序中把哪一个函数(该函数的值是整型的,且有两个整型参数)的地址赋给它,它就指向哪一个函数。在一个程序中,一个指针变量可以先后指向同类型的不同函数。
2.给函数指针变量赋值时,只需要给出函数名,不需要给出参数
如p=max;
3.用函数指针调用函数时,只需要将(*p)代替函数名即可,在(*p)之后的括号中根据需要写上实参。
如:c=(*p)(a,b)
4.对函数指针变量进行p+n,p++,p--等运算是无意义的
代码例子:
// CppTest.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #includeusing namespace std; int max(int x,int y); int min(int x,int y); int sub(int x,int y); int call(int x,int y,int (*p)(int x,int y)); int _tmain(int argc, _TCHAR* argv[]) { cout<<"max:"< y) { return x; } return y; } int min(int x, int y) { if (x>y) { return y; } return x; } int sub(int x, int y) { return x+y; } int call(int x,int y,int (*p)(int x,int y)) { return (*p)(x,y); }
打印结果如下:
感谢各位的阅读,以上就是“c++中函数指针的介绍”的内容了,经过本文的学习后,相信大家对c++中函数指针的介绍这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是创新互联,小编将为大家推送更多相关知识点的文章,欢迎关注!