在c ++中编写setter和getter函数指针

cyb*_*cop 2 c++ getter setter function-pointers getter-setter

我有带有函数指针的pagePtr类,如下所示

int (*FunPtr)(char*sz, unsigned int max_bytes, char* arg1, char* arg2, char* arg3,
char* arg4);//Function definition
Run Code Online (Sandbox Code Playgroud)

我在这样的构造函数中初始化它

pagePtr::pagePtr() : FunPtr(Null)
{
}
Run Code Online (Sandbox Code Playgroud)

现在我写了这样的setter,如果它是正确的我不知道

void pagePtr::setFunPtr(int(*ptr2Fun)(char*sz, unsigned int max_bytes,
char* arg1, char* arg2, char* arg3, char* arg4))
{
    FunPtr = ptr2Fun;
}
Run Code Online (Sandbox Code Playgroud)

我不知道怎么写一个getter(如果我做错了就设置setter).有什么建议?

Kar*_*k T 6

typedef int (*FunPtr)(char*sz, unsigned int max_bytes, char* arg1, char* arg2, char* arg3,char* arg4);//Function definition   // magic word!

void pagePtr::setFunPtr(FunPtr func){m_func = func;} //so clean!!!
FunPtr getFunPtr(){return m_func;}
Run Code Online (Sandbox Code Playgroud)

总是typedef在这种情况下使用,让每个人的生活更轻松..

将变量定义为FunPtr m_func.