죄송합니다. 이전에 답변을 받았음을 확신하지만, 답을 찾으려 애쓰며 찾고 싶어하지 않습니다. .. 어쨌든 ..비 정적 메소드 포인터를 다른 메소드의 인수로 전달
class foo
{
void read(void (*func)(obj&))
{
// many things happen to obj...
(*func)(obj); // Calls the function pointer to the handler.
}
};
class bar : public foo
{
void handler(obj&)
{
//
}
};
void main()
{
foo f;
typedef void (foo::*funcptr)(obj&);
funcptr ptr = &foo::handler;
f.read(ptr); ????
}
그래서 기본적으로 내가 할 노력하고있어 모든 콜백이 실행될 때, 그래서 읽기 방법에 대한 함수 포인터로 핸들러라는 비 정적 멤버 메소드를 전달되면, 핸들러가 호출됩니다.
나는이 작업을하기 위해 모든 종류의 방법을 시도 했으므로 정적 방법을 사용하고 싶지 않습니다. 나는 내가 가깝다고 생각하지만, 결국에는 끝났다. 어떤 도움을 주시면 감사하겠습니다.
FAQ 라이트를 확인해보십시오.이 섹션은 다음과 같이 잘되어 있습니다 : http://www.parashift.com/c++-faq/pointers-to-members.html – Constantin