如何运行我在C ++中有指针的函数?

时间:2012-02-25 20:40:31

标签: c++ c

假设我有一个指向名为foo的函数的指针。我现在如何运行它指向的函数?

3 个答案:

答案 0 :(得分:9)

如果你的功能有以下签名:

void foo(int x);

您已定义以下指针:

void (*ptr)(int) = foo;

您可以通过“ptr”执行foo,如下所示:

ptr(12); //actually calls foo(12);

答案 1 :(得分:4)

与运行任何其他功能的方式相同:

foo();

答案 2 :(得分:2)

假设您的函数指针为fp

void (*fp)(int);

您有两种方法可以从函数指针调用该函数:

fp(3);

(*fp)(3);

这两种方式是等价的,但两者都有其优点。在第二种形式中,它向读者明确说明程序中没有名为fp的函数,但fp是一个函数指针。