전체보기(303)
-
STL - map - sample(2)
#include #include #include using namespace std;struct Item{char Name[32]; // 이름char Kind; // 종류int BuyMoney; // 구입 가격int SkillCd; // 스킬 코드}; int main(){map Items;map::iterator IterPos;typedef pair ItemPair;Item Item1;strncpy( Item1.Name, "긴칼", 32 );Item1.Kind = 1; Item1.BuyMoney = 200; Item1.SkillCd = 0;Item Item2;strncpy( Item2.Name, "성스러운 방패", 32 );..
2017.01.04 -
STL - map - sample(1)
map의 자료구조는 '트리tree'다(정확하게 말하면 트리 자료구조 중의 하나인 '레드-블랙 트리Red-Black tree'이다).정렬이 필요하지 않는 곳에서 map을 사용하는 것은 불필요한 낭비이다. map은 다음 조건일 때 사용하면 좋다.1. 정렬해야 한다.2. 많은 자료를 저장하고, 검색이 빨라야 한다3. 빈번하게 삽입, 삭제하지 않는다. map은 자료를 저장할 때 정렬을 한다고 말했다. 정렬의 대상은 key를 대상으로 하며 오름차순으로 정렬한다. 그래서 내림차순으로 정렬하고 싶거나 key의 자료형이 기본형이 아닌 유저 정의형(class나 struct로 정의한 것)인 경우는 정렬 방법을 제공해야 한다. 위에 생성한 map1은 오름차순으로 정렬하는데 이것을 내림차순으로 정렬하고싶다면 아래와 같이 하면..
2017.01.04 -
STL - hash_map - sample(2)
#include #include using namespace std;using namespace stdext; // 게임 캐릭터struct GameCharacter{GameCharacter() { }GameCharacter( int CharCd, int Level, int Money ){_CharCd = CharCd;_Level = Level;_Money = Money;}int _CharCd; // 캐릭터코드int _Level; // 레벨int _Money; // 돈}; void main(){hash_map Characters;GameCharacter Character1(12, 7, 1000 ); Characters.insert(hash_map::value_type(12, Character1));Game..
2017.01.04 -
STL - hash_map - sample(1)
hash_map을 사용하는 경우1. 많은 자료를 저장하고, 검색 속도가 빨라야 한다.2. 너무 빈번하게 자료를 삽입, 삭제 하지 않는다. #include #include using namespace std;using namespace stdext; // 게임 캐릭터struct GameCharacter{// 아래의 인자를 가지는 생성자를 정의한 경우는// 꼭 기본 생성자를 정의해야 컨테이너에서 사용할 수 있다.GameCharacter() { }GameCharacter( int CharCd, int Level, int Money ){_CharCd = CharCd;_Level = Level;_Money = Money;}int _CharCd; // 캐릭터 코드int _Level; // 레벨int _Money; ..
2017.01.04 -
STL - Deque - sample(2)
#include #include using namespace std;int main(){deque deque1;cout
2017.01.04 -
STL - Deque - sample(1)
// Insert와 erase #include #include using namespace std;int main(){Packet Pkt1;Pkt1.Index = 1; Pkt1.BodySize = 10;Packet Pkt2;Pkt2.Index = 2; Pkt2.BodySize = 12;Packet Pkt3;Pkt3.Index = 3; Pkt3.BodySize = 14;Packet Pkt4;Pkt4.Index = 4; Pkt4.BodySize = 16;deque ReceivePackets;ReceivePackets.push_back( Pkt1 );ReceivePackets.push_back( Pkt2 );ReceivePackets.push_back( Pkt3 );cout
2017.01.04