home *** CD-ROM | disk | FTP | other *** search
/ DP Tool Club 3 / CDASC03.ISO / sorties / 4140 / whois_.exe / SLLIST.HPP < prev    next >
Text File  |  1991-08-20  |  2KB  |  62 lines

  1. /****************************************************************
  2. File Name:        sllist.hpp
  3. Author:            Andrew Frantz
  4. Purpose:            singly linked list(queue) definition
  5. Date:                2/8/91
  6. Environ:            BORLAND C++ v2.0
  7. Keywrd(s):        CPP SINGLY LINKED LIST
  8. Revision Log:  
  9.     1.    3/22/91;  Changed data_field1 to rec_num in struct node
  10.     2. 3/23/91;  Added void* some_more_data to struct node 
  11.     3.    3/23/91;  Added add_queue() function ;
  12.     4. 3/25/91;  Changed node *next to void *next in node struct
  13. ****************************************************************/
  14. #include <stdio.h>
  15. #include <stdlib.h>
  16. #include <conio.h>
  17.  
  18. // ==========================================================
  19. struct node
  20. {
  21.     int rec_num;
  22.     char file_name[80];
  23.     int edge;
  24.     void *next;
  25. };
  26. // ==========================================================
  27. class sllist
  28. {
  29.     public:
  30.         //data
  31.     protected:
  32.         //data
  33.     private:
  34.         //data
  35.         node *head;
  36.     public:
  37.         //functions
  38.         sllist()        { head = NULL; }  // constructor
  39.         ~sllist()    { del_all(); }        // detructor of list
  40.         node*            get_head() { return head; }
  41.         void            put_head(node* input) {head=input;}
  42.         void            add_in_p_order(int c);    // priority add item to list
  43.         node*            add_queue(int c);       // queue add FIFO
  44.         node*            add_queue(char *fname);
  45.         void            del_one(int c);            // delete one item in list
  46.         void            print_list();
  47.         void             print_stack();
  48.         int             pop_stack(int *redg);
  49.         void             push_stack(int rec_num, int edge);
  50.         int            check_stack_for_cycle();  //for graph 
  51.  
  52.         void            del_all();            // delete all items in list
  53.     protected:
  54.         //functions
  55.     private:
  56.         //functions
  57.  
  58. };
  59. // ==========================================================
  60.  
  61. // =================== End of Listing =======================
  62.