¿¹Á¦

class MyClass {
public:
int publicVar;
int publicFnc(){//needs to be member
privateFnc();
return privateVar;
}

int memberFnc();//does not need to be member

protected:
int privateVar;
private:
int privateFnc(){ return privateVar; }

};

int MyClass::memberFnc(){
publicFnc();
return publicVar;
}

¼Ö·ç¼Ç
¸Å°³º¯¼ö·Î Ŭ·¡½º¸¦ ½ÂÀÎÇÏ°í °°Àº ±â´ÉÀ» ¼öÇàÇÏ´Â ¸â¹ö°¡ ¾Æ´Ñ ÇÔ¼ö·Î ¸¸µå½Ê½Ã¿À.

class MyClass {
public:
int publicVar;
int publicFnc(){//needs to be member
privateFnc();
return privateVar;
}

protected:
int privateVar;
private:
int privateFnc(){ return privateVar; }

};

int nonMemberFunction(const MyClass& mc){
mc.publicFnc();
return mc.publicVar;
}