18. STL vector3
by Qerogram* 마지막으로 책에서는 과제를 내어준다.
= 두 과제 다, 그냥 필자가 문제를 이해한대로 적은 답이기에, 오답일 수도 있다.
1. list를 사용한 스택(LIFO 방식)을 vector를 사용해서 만들어 보세요.
2. 카트라이더와 같이 방을 만들어서 게임을 하는 온라인 게임에서 방에 있는 유저를 관리하는 부분을 vector를 사용하여 만들어라.
- 선언은 아래와 같다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 | // 유저 정보 struct UserInfo { char acUserName[21]; // 이름 int Level; // 레벨 int Exp; // 경험치 }; // 게임 방의 유저를 관리하는 클래스 // 방에는 최대 6명까지 들어 갈 수 있다. // 방에 들어 오는 순서 중 가장 먼저 들어 온 사람이 방장이 된다. class GameRoomUser { public: GameRoomUser(); ~GameRoomUser(); // 방에 유저 추가 bool AddUser( UserInfo& tUserInfo ); // 방에서 유저 삭제. // 맊약 방장이 나가면 acMasterUserName에 새로운 방장의 이름을 설정 해야 된다. bool DelUser( char* pcUserName ); // 방에 유저가 없는지 조사. 없으면 true 리턴 bool IsEmpty(); // 방에 유저가 꽉 찼는지 조사. 꽉 찼다면 true 리턴 bool IsFull(); // 특정 유저의 정보 UserInfo& GetUserOfName( char* pcName ); // 방장의 유저 정보 UserInfo& GetMasterUser(); // 가장 마지막에 방에 들어 온 유저의 정보 UserInfo& GetUserOfLastOrder(); // 특정 순서에 들어 온 유저를 쫒아낸다. bool BanUser( int OrderNum ); // 모든 유저를 삭제한다. void Clear(); private: vector< UserInfo > Users; char acMasterUserName[21]; // 방장의 이름 }; | cs |
'코딩 > C&C++' 카테고리의 다른 글
20. STL deque2 (0) | 2017.04.19 |
---|---|
19. STL deque1 (0) | 2017.04.18 |
17. STL vector2 (0) | 2017.04.18 |
16. STL vector1 (0) | 2017.04.17 |
15. STL list3 (0) | 2017.04.17 |
블로그의 정보
Data+
Qerogram