这可能是基本的东西,我有一个来自一个类(称为cell
)的函数,其标识符woo_func_ptr
采用指向void
不带参数的类型函数的指针(void (*void_ptr)(void)
)(我typedef
)。在另一个类中,我有一个对象,cell
我使用方法woo_func_ptr
。它不允许我这样做,我在上面的标题中得到了错误。如果这两个函数没有嵌入到一个类中,它们就可以正常工作
typedef void (*void_ptr)(void);
double WOO{0};
struct cell {
void woo_func_ptr(void_ptr jo)
{
jo();
}
};
class woosah
{
public:
void woo_func()
{
WOO+=rand();
std::cout << WOO << std::endl;
};
void run()
{
// other stuff
temp_cell.woo_func_ptr(woo_func);
// yet more stuff
}
cell temp_cell;
};