3 버전에서 오버로드 된 함수 repaint()의 함수 포인터를 전달하려고합니다.오버로드 된 멤버 함수의 함수 포인터를 전달 하시겠습니까?
void repaint()
내가 시도 : 나는 어떤 인자가없는 한 통과 할
myObject = new Object(&myclass::repaint);
을하지만 컴파일러는 "내가 선택할 수있는 버전을 모른다"말했다. 승인.
그럼 내가 (나쁜 번역 죄송합니다) 가지고 다음
myObject = new Object(static_cast<void(*)(void)>(&repaint);
을 시도 :
- "잘못된 작업 바운드 멤버 함수의 표현에"
- "myObject에 :: myObject 오버로드 된 함수가 3 개의 인수를 허용하지 않습니다. "
올바르게 전달하는 방법은 무엇입니까?
1.이'객체 : 객체의 서명을 게시 할 수 있나요 (...)' 2.'static_cast' 줄에 오타가있는 것 같아요.')'before';'? –
가능한 중복 [C++ 오버로드 된 메서드 포인터] (http://stackoverflow.com/questions/4364599/c-overloaded-method-pointer) – Oktalist