c++ - How to store a list of strings -


i want store list of strings generate. don't know amount of strings , don't want store them if there identical string in list. want able count amount of strings in list.

thanks!

use std::set container automatically keeps elements sorted , allows distinct elements (no duplicates), e.g.:

std::set<std::string> s;  s.emplace("arthur"); s.emplace("barry"); s.emplace("barry"); s.emplace("barry"); s.emplace("charlie");  std::cout << std::size(s) << std::endl; // outputs '3'. 

if need fast access , seldomly update container might use std::vector , remove duplicates after every insertion.

std::vector<std::string> v;  v.emplace_back("arthur"); v.emplace_back("barry"); v.emplace_back("barry"); v.emplace_back("barry"); v.emplace_back("charlie");  std::sort(std::begin(v), std::end(v)); // sort needed 'std::unique' work. v.erase(std::unique(std::begin(v), std::end(v)), std::end(v)); // remove duplicates.  std::cout << std::size(v) << std::endl; // outputs '3'. 

std::vector not keep elements sorted though.


Comments

Popular posts from this blog

ubuntu - PHP script to find files of certain extensions in a directory, returns populated array when run in browser, but empty array when run from terminal -

php - How can i create a user dashboard -

javascript - How to detect toggling of the fullscreen-toolbar in jQuery Mobile? -