【问题标题】:How to pass into the function pointer to function?如何将函数指针传递给函数?
【发布时间】:2012-04-15 01:51:31
【问题描述】:

是否可以创建一个带有指向另一个函数的指针的函数?这样一个函数的原型是什么样子的?

【问题讨论】:

标签: c++


【解决方案1】:
typedef int (*func)(float, char);

int something_that_takes_a_func(func f) { return f(3.14, 3); }

int foo(float a, char b) { return a - b; }

std::cout << something_that_takes_a_func(&foo) << "\n";

【讨论】:

    【解决方案2】:
    void f(int(*Func)())
    {
        int a = Func();
    }
    

    对于成员函数:

    void f(int(cLass::*Func)())
    {
        cLass *c = new cLass;
        int a = (c->*Func)();
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多