fork download
  1. #include <iostream>
  2. #include <sstream>
  3. #include <iterator>
  4. #include <algorithm>
  5. #include <vector>
  6. #include <set>
  7.  
  8. int main()
  9. {
  10. std::vector<std::string> vExt;
  11. vExt.push_back("*.JPG;*.TGA;*.TIF");
  12. vExt.push_back("*.PNG;*.RAW");
  13. vExt.push_back("*.BMP;*.HDF");
  14. vExt.push_back("*.GIF");
  15. vExt.push_back("*.JPG");
  16. vExt.push_back("*.BMP");
  17.  
  18. std::stringstream ss;
  19. std::copy(vExt.begin(), vExt.end(),
  20. std::ostream_iterator<std::string>(ss, ";"));
  21.  
  22. std::string element;
  23. std::set<std::string> unique;
  24. while (std::getline(ss, element, ';'))
  25. unique.insert(unique.end(), element);
  26.  
  27. std::stringstream oss;
  28.  
  29. std::copy(unique.begin(), unique.end(),
  30. std::ostream_iterator<std::string>(oss, ";"));
  31.  
  32. std::cout << oss.str() << std::endl;
  33.  
  34. return 0;
  35. }
  36.  
Success #stdin #stdout 0s 2868KB
stdin
Standard input is empty
stdout
*.BMP;*.GIF;*.HDF;*.JPG;*.PNG;*.RAW;*.TGA;*.TIF;