2

使用指向函数的指针有哪些实际示例和应用?我不明白为什么有人需要使用它。

谢谢

4

3 回答 3

4

两个主要原因:

1)您可以选择在某些情况下使用哪个功能。

2)你可以为另一个函数提供一个回调函数(例如C标准库函数qsort将函数指针作为参数:你自己编写这个函数来告诉qsort如何比较两个值)。

于 2013-06-19T20:21:33.850 回答
0

如果您有一个包含另一个对象的对象(让我们将它们标记为 A 和 B),您可以将指向 A 中的函数的指针传递给 B 对象,并从 B 中的 A 调用函数。这称为回调, 并且被相当频繁地使用。

于 2013-06-19T20:23:05.590 回答
0

主要原因是您可以将函数作为参数传递给其他函数。例如,假设您想要实现一个对存储在数组中的数据进行操作的 forEach() 函数。然后,您希望 forEach() 函数将数组以及您希望应用于每个元素的函数作为参数。

这是我能想到的最简单的例子,但您可以想象将函数传递给其他函数可能有用的其他情况。

另见:https ://en.wikipedia.org/wiki/Functional_programming

于 2013-06-19T20:31:45.760 回答