相关疑难解决方法(0)

使用boost :: bind和boost :: function:检索绑定变量类型

有没有办法检索有什么参数由boost :: bind限制的信息,还是需要手动存储?

即:

在.h

class MyClass
{
    void foo(int a);
    void foo2(double b);
    void bar();
    void execute();
    int _myint;
    double _mydouble;
}
Run Code Online (Sandbox Code Playgroud)

在.cpp

MyClass::bar()
{
    vector<boost::function<void(void)> myVector;
    myVector.push_back(boost::bind(&MyClass::foo, this, MyClass::_myint);
    myVector.push_back(boost::bind(&MyClass::foo2, this, MyClass::_mydouble);
}
MyClass::execute(char* param)
{

    boost::function<void(void)> f  = myVector[0];
    //MAGIC goes here
    //somehow know that an int parameter was bound
    _myint = atoi(param);
    //--------------------------------------
    f();
}
Run Code Online (Sandbox Code Playgroud)

c++ boost types

4
推荐指数
1
解决办法
1657
查看次数

标签 统计

boost ×1

c++ ×1

types ×1