函数指针

 

void func(void){}

//函数指针
void(*func_ptr)(void) = &func; 
func_ptr();

 

struct Foo
{
    void operator()(void){
    }
};
//仿函数
Foo foo;  
foo();

 

struct A
{
    int a_;
    void mem_func(void)
    {
        //...
    }
};
void(A::*mem_func_ptr)(void) = &A::mem_func;  //类成员函数指针
int A::*mem_obj_ptr = &A::a_;           //类成员指针

A aa;
(aa.
*mem_func_ptr)(); aa.*mem_obj_ptr = 123;

 

posted @ 2019-06-25 23:28  osbreak  阅读(139)  评论(0编辑  收藏  举报