Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- typedef int World;
- class Dictionary {
- struct Element {
- int m_addr;
- World m_value;
- Element* m_next;
- };
- Element* a_head;
- Element* find(int a_addr)
- {
- Element* current = a_head;
- while( current ) {
- if( current->m_addr == a_addr )
- return current;
- current = current->m_next;
- }
- return 0;
- }
- Element* add(int a_addr)
- {
- assert( !find(a_addr) );
- Element* new_el = new Element;
- new_el->m_addr = a_addr;
- new_al->m_next = a_head;
- a_head = new_al;
- }
- public:
- Dictionary() : a_head() {}
- ~Dictionary()
- {
- Element* current = a_head;
- while( current ) {
- Element* for_del = current;
- current = for_del->m_next;
- delete current;
- }
- }
- void save(int a_addr, World a_value)
- {
- Element* e = find(a_addr);
- if( !a )
- e = add(a_addr);
- e->m_value = a_value;
- }
- void load(int a_addr)
- {
- Element* e = find(a_addr);
- assert(e);
- return e->m_value;
- }
- };
Add Comment
Please, Sign In to add comment