Advertisement
Guest User

Untitled

a guest
Jun 17th, 2019
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.25 KB | None | 0 0
  1. #include <iostream>
  2. #include <map>
  3. #include <algorithm>
  4. #include <list>
  5. #include <string>
  6. #include <sstream>
  7. #include <memory>
  8. //zadanie trzecie
  9. class StringList{
  10. private:
  11. std::list<std::string> lista;
  12. //std::list<std::string>::iterator it=lista.begin();
  13. std::shared_ptr<std::list<std::string>::iterator> it= std::make_shared<std::list<std::string>::iterator>(lista.begin());//lista.begin();
  14. public:
  15. void operator()(std::string,bool);
  16. void print_list();
  17. friend std::ostream& operator<<(std::ostream& os,StringList& SL);
  18. };
  19. std::ostream& operator<<(std::ostream& os, StringList& SL){
  20. //auto it=*SL.it
  21. os<<*(SL.it)
  22. return os;
  23. }
  24.  
  25. void StringList::operator()(std::string str,bool b){
  26. if(b==true)
  27. lista.push_back(str);
  28. if(b==false){
  29. auto pos=std::find(lista.begin(),lista.end(),str);
  30. if(pos!=lista.end())
  31. lista.erase(pos);
  32. else
  33. std::cout<<"Nie ma tagiego elementa w liste"<<std::endl;
  34. }
  35. }
  36.  
  37. void StringList::print_list(){
  38. for(auto i: lista)
  39. std::cout<<i<<" ";
  40. std::cout<<std::endl;
  41. }
  42.  
  43.  
  44. int main()
  45. {
  46. StringList SL;
  47. SL("ALA",true);
  48. SL("MA",true);
  49. SL("KOTA",true);
  50. std::cout<<SL;
  51. return 0;
  52. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement