CnUnix

[알림판목록 I] [알림판목록 II] [글목록][이 전][다 음]
[ CnUnix ] in KIDS
글 쓴 이(By): wshan (같은예감)
날 짜 (Date): 1995년08월02일(수) 15시26분55초 KDT
제 목(Title): [Re] C++ member함수..



채흥석님의 답변이 맞는것 같네요.

쉽게 생각하면 이렇게 보낸다고 생각하시면 됩니다.

class A{
    int a;
    void f();
};

void A::f() { ...}

main()
{
    A l,m;
    l.f();
    m.f();
}

==>

struct A {
    int a;
};

void f(struct *this)
{
   ...
}

main()
{
    A l,m;
    f(&l);
    f(&m);
}

물론 C++에서는 name을 conversion하긴 하지만 이렇게 

한다고 생각하시면 됩니다...

위에 함수 f의 아규먼트가 잘못되었네요..struct A *this라고

되면 되겠지요..

그럼 답이 되셨길.ㄹ.


하지만 virtual이 붙은 경우는 다르게 취급이 됩니다.

이 경우는 virtual table을 setting하는 등 좀 복잡해 지지요..
[알림판목록 I] [알림판목록 II] [글 목록][이 전][다 음]
키 즈 는 열 린 사 람 들 의 모 임 입 니 다.