|
아래 질문에 답해주신 개박살.U&I 님께 감사드립니다.
아래질문에 이어서 또다른 질문을 드립니다.
// 아래와 같이 선언된 라이브러리 함수 가 있는데요...
VCCCALL CallbackFunction(void (* pcbfptr)(int dNum,int pNum, int Message));
// RunNext라는 함수를 만들고...
void __fastcall TMDIChild::RunNext(int dNum, int pNum, int Message)
{
생략....
}
void __fastcall TMDIChild::BitBtnStartClick(TObject *Sender)
{
...
CallbackFunction(RunNext); // 인자로 RunNext()의 포인터를 넘겨주어야함.
}
위와같이 하면 'Cannot convert 'void (__fastcall*(_closure)(int,int,int))(int,int,int)' to void(*)(int,int,int)' 라는 에러메시지가 나옵니다.
RunNext를 일반함수로 만들면 되지만 그러면 MDIChild내의 컴포넌트를 액세스 하기가 나쁘고요.
이런것이 가능 할까요?
꼭 답좀 해주세요.
|