c++ 11 tuple使用,与vector set结合

原文:https://oopscenities.net/2015/09/10/stdtuple/

#include <iostream>
#include <set>
#include <string>
#include <tuple>
 
using namespace std;
 
using car = tuple<string, string, int >;
 
void print( const car& c)
{
     cout << get<0>(c) << ", " << get<1>(c) << "; " << get<2>(c) << endl;
}
 
int main()
{
   set<car> cars;
   cars.emplace( "Toyota" , "Rav4" , 2012);
   cars.emplace( "VW" , "Jetta" , 2015);
   cars.emplace( "Chevrolet" , "Sonic" , 2013);
   cars.emplace( "BMW" , "X5" , 2014);
   cars.emplace( "VW" , "Jetta" , 2014);
   
   for ( auto & i : cars)
     print(i);
 
   cout << "******" << endl;
   auto it = cars.find(car { "Toyota" , "Rav4" , 2012 });
   if (it == cars.end())
     cerr << "CAR NOT FOUND" << endl;
   else
     print(*it);
     
   return 0;
}

int main()
{
   vector<tuple< int , string>> vec;
   vec.push_back(make_tuple(10, "ten" ));
   vec.emplace_back(20, "twenty" );
   vec.emplace_back(30, "thirty" );
 
   for ( auto & i : vec)
   {
      cout << "(" << get<0>(i) << "; " << get<1>(i) << ")" << endl;
   }
}



猜你喜欢

转载自blog.csdn.net/hetongde/article/details/79228832