调用ofApp成员函数作为函数参数

时间:2018-01-18 02:12:06

标签: c++ openframeworks

我试图理解并学习如何将ofApp的一个函数传递给ofApp中的另一个函数。虽然传递全局函数,或者使用lambda函数对我来说很容易,但我根本无法完成这项工作。 前提本身很简单,但我觉得oF结构比使用它更困难,并且使用成员函数作为参数的一般答案很难转移。

我尝试实现的是这样的结构: functionA(f(x)){  //我做什么  F(X) }

其中f(x)可以是opApp的任何给定的其他函数。

.h定义

class ofApp : public ofBaseApp{

public:
    void setup();
    void update();
    void draw();

    int addition (int a);
    int operation (int a, int (*f)(int));   
};

而heres是oF“main”和两个函数的一部分。

void ofApp::setup(){
    operation(1, std::bind(&ofApp::addition, this));
}

int ofApp::addition (int a){
    return (a+a);
}

int ofApp::operation (int a, int (*f)(int)){
    int g = 0;
    g = (*f)(a);
    return (g);
}

0 个答案:

没有答案