class TEST
{
public:
void output(int a , int b)
{
cout << "int" << endl;
}
};
void main(void)
{
typedef void (*FA)(int a, int b);
FA d;
TEST g;
d = g.output;
return;
}
문제는 d라는 함수포인터 변수에 TEST클래스의 멤버함수인 output의 주소를 넣고싶습니다..
error C3867: 'TEST::output': 함수 호출에 인수 목록이 없습니다. '&TEST::output'을(를) 사용하여 멤버에 대한 포인터를 만드십시오.
error C2440: '=' : 'void (__thiscall TEST::* )(int,int)'에서 'FA'(으)로 변환할 수 없습니다.
이러한 에러가 뜨는데 현재 저로썬 이해가 잘안가네요 도와주세욤..
덧붙여 쓰자면 typedef void (*FA)(int a, int b);는 typedef void (TEST::*FA)(int a, int b); 로 안바꾸고 하고싶어요
아 해결해씀 ㅈㅅ
문제가 뭐였나요 ?