返回指向函数的指针的函数 的一个例子
2013-03-02 22:50
267 查看
在C++ PRIMER讲返回指向函数的指针的函数时,总是有点稀里糊涂的,想有一个明确的例子来理解,可惜书上没写。
于是,琢磨了一会儿,自己用了一个简单的例子
想来大家也都看得懂,我就不在代码中写注释了
于是,琢磨了一会儿,自己用了一个简单的例子
想来大家也都看得懂,我就不在代码中写注释了
#include <iostream> using namespace std; int (*choice(int v))(int v1, int v2); int max(int v1, int v2); int min(int v1, int v2); int main() { typedef int (*pf)(int, int); pf pmax = choice(1); pf pmin = choice(2); int v1 = 1, v2 = 2; cout << "Max is : " << pmax(v1, v2) << endl << "Min is : " << pmin(v1, v2) << endl; return 0; } int (*choice(int v))(int v1, int v2) { if(v == 1) { return max; } if(v == 2) { return min; } } int max(int v1, int v2) { return v1 > v2 ? v1 : v2; } int min(int v1, int v2) { return v1 < v2 ? v1 : v2; }
相关文章推荐
- 编写一个函数new,对n个字符开辟连续的存储空间,此函数应返回一个指针(地址),指向字符串开始的空间。new(n)表示分配n个字节的内存空间。
- 编写一个名为my_strcpy_end的函数, 他返回一个指向目标字符串末尾的指针 (也就是说指向NUL字节的指针)
- 一个C++程序例子——指向函数的指针、含有可变形参的函数(备查)
- 声明一个指向含有10个元素的数组的指针,其中每个元素是一个函数指针,该函数的返回值是int,参数是int*,正确的是()
- C/C++—— 写一个函数,它的参数为指向函数的指针,返回类型也为指向函数的指针
- C++中函数怎么返回一个二维数组。指针怎么指向二维数组?
- 用变量a给出下面的定义:一个有10个指针的数组,该指针指向一个函数,该函数有一个整形参数并返回一个整型数
- 习题 8.19(1) 编写一个函数new,对n个字符开辟连续的存储空间,此函数应返回一个指针(地址),指向字符串开始的空间。new(n)表示分配n个字节的内存空间。
- 【c语言】编写一个函数new,对n个字符开辟连续的存储空间,此函数应返回一个指针(地址),指向字符串开始的空间
- C++函数指针指向一个返回函数指针的函数
- 定义一个函数指针,指向的函数有两个int形参并且返回一个函数指针,返回的指针指向一个有一个int形参且返回int的函数?
- C语言技巧--在结构体中使用函数例子(定义一个指向函数的指针)
- 指向函数的指针的一个例子
- 接受int形参(double,,等等)返回int(...);并且一个vector对象保存指向这些函数的指针;进行加减乘除;输出结果
- 函数返回一个指针
- 给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回。注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针。
- 函数返回指向函数的指针
- 返回指针的函数&&指向函数的指针
- 输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针指向任意一个节点),返回结果为复制后复杂链表的head。
- 做一个返回数组的函数(例子)