class chulsoo
{
private:
int x,y; // 현재 위치
int hp; // 체력
int shield; // 보호막
int level; // 레벨
double exp; // 경험치
item items[MAXITEM]; // 보유한 무기들
public:
void walk(); // 걷는다.
void jump(short height); // 점프한다.
void turn(int dir); // 방향을 바꾼다.
BOOL attack(int what); // 적을 신나게 공격한다.
void defence(); // 방어한다.
BOOL hurt(int fromwhom); // 공격을 당한다.
BOOL die(); // 너무 많이 맞아서 죽는다.
};
private 이건 변경을 못한다는건데 만약에 이걸 public 으로 쓴다면 유저들이 막 자신의 위치를 맘대로 바꿀수잇다는거임?
private 랑 public 의 정의를 잘모르시는듯..
private는 해당 콜을 한 클래스내에서만 사용가능하며 , public은 선언된 클래스를 use(include) 한 클래스에서도 사용가능한 변수를 말함 (private는 지역적이며, public은 전역적이란 개념이맞는듯)
private라고 다른놈들이 호출못하고 public이라고 호출 할수 있고 이런차이는없음
그럼 언제든지 public 으로 호출하면되는대 private 를 쓰는 이유가 ? 머죠? 결론은 이거임
님 프린트에프 하면 값을 출력만 해야하는데 실수로 그걸로 값이 변경되면 어이없겠져? 값을 수정할땐 하고 안할땐 안해야하는고 라이브러리 단에서 그런 api 를 제대로 제공해줘야 쓰기편하고, 님이 지금 자기가 쓸 라이브러리를 만든다 생각해봐요
정보은닉이란 개념에대해 공부해보세용~
캡슐화!