将函数名作为参数传递给另外一个函数(其实函数名是一个函数指针)

例1:

int f1()

{

return 1;

}

int f2()

{

return 2;

}

void f(int f())

{

printf("%d/n",f());

}

int main()

{

f(f1);

f(f2);

return 0;

}

输出

1

2

例2:

void listArray(void handler(int &item))

{

int ia[] = {1, 2, 3, 4, 5, 6};

for(int i = 0; i < 6; ++i)

{

if(handler)

handler(ia[i]);

std::cout << i << ":" << ia[i] << " ";

}

std::cout << std::endl;

}

void doubleValueHandler(int &i)

{

if(i % 2 == 0)

i *= i;

return ;

}

void testMethodHandler()

{

listArray(NULL);

listArray(doubleValueHandler);

}

输出:

0:1 1:2 2:3 3:4 4:5 5:6

0:1 1:4 2:3 3:16 4:5 5:36

linux 从入参获取函数名字,C++ 函数名作为参数传递给另一个函数相关推荐

  1. React Native之函数作为参数传递给另外一个函数去调用

    1 用法 我们一般喜欢把js里面的函数作为参数传递给另外一个函数,然后再调用这个函数,有点像C语言里面的函数指针 2 代码测试 写了一个函数,2个参数分别是函数,然后更具数据决定调用哪个函数 /*** ...

  2. python函数案例名片管理器_python案例:实现一个函数版的名片管理系统

    本案例使用了自定义函数以及对字符串的常见操作.判断语句和循环语句等知识. 要求 必须使用自定义函数,完成对程序的模块化. 名片信息至少包括:姓名.电话.住址. 必须完成的功能:增.删.改.查.退出. ...

  3. 将函数当做参数 matlab,Matlab中如何将(自定义)函数作为参数传递给另一个函数...

    假如我们编写了一个积分通用程序,想使它更具有通用性,那么可以把被积函数也作为一个参数.在c/c++中,可以使用函数指针来实现上边的功能,在matlab中如何实现呢?使用函数句柄--这时类似于函数指针的 ...

  4. C语言基础课 编写程序之1.编写一个判断素数的函数,并利用该函数输出100~200的所有素数2.编写一个函数fun(),函数功能是:判断一个整数是否既是5又是7的整倍数,若是,输出yes,不是,输出n

    1.编写一个判断素数的函数,并利用该函数输出100~200的所有素数 #include<stdio.h> #include<math.h> int fun(int n) {in ...

  5. python编写一个函数、输入n为偶数时_编写一个函数,输入n为偶数时,调用函数求1/2+1/4+...+1/n,当输入n为奇数时,调用函数1/1+1/3+..-吾爱编程网...

    今天吾爱编程为大家分享一个C语言的经典案例编写一个函数,输入n为偶数时,调用函数求1/2+1/4+...+1/n, 当输入n为奇数时,调用函数 1/1+1/3+...+1/n的程序写法,有需要的小伙伴 ...

  6. python中一个函数只允许有一条return语句_一个函数应该只有一个return语句吗?

    我经常在一个方法的开头有几个语句来返回"简单"的情况.例如,这个: public void DoStuff(Foo foo) { if (foo != null) { ... } ...

  7. Linux命令之一句获取网卡名字

    命令: 注意: 如需复制请使用划词后ctrl+c复制,右边栏的复制键内容编码会令到shell解析不到的现象 cat /proc/net/dev | awk '{i++; if(i>2){prin ...

  8. 对象入参指定泛型类型_如何得到正确的MethodInfo对象当一个类使用泛型和泛型类型参数...

    I was wondering if someone might be able to demonstrate how to use Type's GetMethod() method to retr ...

  9. 不同php怎么传递参数,php – 将所有参数传递给另一个函数

    我有两个这样的功能: function mysql_safe_query($format) { $args = array_slice(func_get_args(),1); $args = arra ...

最新文章

  1. redis 面试问题问答Top 10
  2. 即将推出.NET Framework 4.7.2中的一些亮点
  3. HMTL/CSS——下拉菜单DEMO
  4. CCNA学习心得(一)
  5. 条款11 在operator=中处理“自我赋值”
  6. css3 多列布局使用
  7. pandas打印全部列_python——pandas练习题1-5
  8. 猴子选大王 java,PAT-JAVA-5-28 猴子选大王 (20分)
  9. python读取文件最后几行_python读取文件最后一行两种方法
  10. java 取pdf 文本域_使用PDFBox获取文本行的位置
  11. linux中引入python的tkinter模块
  12. Android真机连接Eclipse时,打不开File Explorer下的data文件夹解决方法
  13. 26种对付反调试的方法
  14. 移动设备分辨率(终于弄懂了为什么移动端设计稿总是640px和750px)
  15. 世界人工智能大会-杨强演讲内容ppt
  16. 编译Libtorrent
  17. DBeaver21.1.5如何迁移已有数据库连接
  18. vue获取tr内td里面所有内容_点击td获取tr的所有值
  19. Java实现XML格式化输出
  20. update语句修改mysql密码_修改 mysql 密码

热门文章

  1. 安卓案例:列表控件上拉加载更多
  2. Spring Boot学习笔记:Spring Boot核心配置
  3. vue 引用src中的文件_Vue中引用第三方JS文件
  4. 康乐php5.2_搭建PHP服务器调试环境套件下载-Easy2PHP5正式版下载[环境套件]-华军软件园...
  5. python百度贴吧发帖签到_python 爬虫 百度贴吧签到小工具
  6. java中多线程的创建方式一:
  7. linux 添加路由_在 Linux 上使用开源软件创建 SDN | Linux 中国
  8. 滚动到底部自动加载 html,移动端页面滚动到底部自动加载数据
  9. 计算机组成原理与汇编语言试题,中央电大计算机组成原理与汇编语言试题
  10. python库的安装方法_Python库的安装方法