Advertisement
Guest User

pattern Composit

a guest
Sep 21st, 2017
58
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.58 KB | None | 0 0
  1. #include <iostream>
  2. #include <stack>
  3. #include <list>
  4. using namespace std;
  5.  
  6. class Component
  7. {
  8.  
  9. };
  10. class Atom:Component
  11. {
  12. private:
  13.     string data;
  14. public:
  15.     Atom(string a):data(a)
  16.     {
  17.  
  18.     }
  19. };
  20.  
  21. class Complex: Component
  22. {
  23. private:
  24.     list<Component> list;
  25.     list<*Complex> temp_list;
  26. };
  27.  
  28. Atom* Parse(string in, int p)
  29. {
  30.     string result = " ";
  31.     int i = p;
  32.     while (in[i] == '(')
  33.     {
  34.         temp_list = new Component();
  35.         temp_list.Add(new Atom(result));
  36.         Parse(in, p - 1);
  37.     }
  38.     while (in[i] != ',')
  39.     {
  40.         result += in[i];
  41.         i++;
  42.     }
  43.     Atom a(result);
  44.     Parse(in, i++);
  45. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement