반응형
//************************************************************ // list !! //************************************************************ #include#include #include #include
#include using namespace std; class Addr { private: string name; string addr; public : Addr( string name = "이름없음" ,string addr = "") { this->name = name; this->addr = addr; } string getName(){return name; } string getAddr() {return addr; } bool operator==(string name ) { if( this->name == name) return true; else return false; } void show() { cout << "이름 : " << name << " 주소 : " << addr << endl;} }; ostream & operator<<( ostream & os , Addr & addr) { addr.show(); return os; } class group { private: string g_name; list AddrList; } class AddrManager { private: vector< group > AddrList; public: AddrManager() { list l; AddrList.push_back(l); } // CRUD void Insert( ) { string name; string addr; cout << "이름 : "; cin >> name; cout << "주소:"; cin >> addr; Addr * NewAddr = new Addr(name, addr); AddrList.push_back(NewAddr); } void Del() { string name; cout << "이름 : "; cin >> name; list ::iterator p; for( p = AddrList.begin(); p!= AddrList.end(); p++) { if( (*p)->getName() == name) { AddrList.erase( p ); return; } } //AddrList.erase( ); } void show() { list ::iterator p; for( p = AddrList.begin(); p!= AddrList.end(); p++) (*p)->show(); } }; void main() { AddrManager am; am.Insert(); am.Insert(); am.Insert(); am.show(); am.Del(); am.show(); }
'자료구조' 카테고리의 다른 글
[자료구조] Queue (0) | 2014.12.01 |
---|---|
[자료구조] Map (0) | 2014.12.01 |
[자료구조] 배열을 추상화 한 클래스 (0) | 2014.12.01 |
[자료구조] C언어 동적배열 사용 (0) | 2014.11.18 |
[자료구조] C 언어 동적 배열 (0) | 2014.11.18 |