Ovenのelements_c

Ovenのelements_c使ってみました。


vector >のFirstを全て出力

#include <iostream>
#include <vector>
#include <utility>
#include <string>
#include <boost/foreach.hpp>
#include <pstade/oven/elements.hpp>

using namespace std;
using namespace pstade::oven;

int main()
{
    vector<pair<int, string> > v;

    v.push_back(make_pair(3, "a"));
    v.push_back(make_pair(1, "b"));
    v.push_back(make_pair(4, "c"));

    BOOST_FOREACH (int item, v|elements_c<0>()) {
        cout << item << endl;
    }
}
3
1
4


Secondを全て出力

#include <iostream>
#include <vector>
#include <utility>
#include <string>
#include <boost/foreach.hpp>
#include <pstade/oven/elements.hpp>

using namespace std;
using namespace pstade::oven;

int main()
{
    vector<pair<int, string> > v;

    v.push_back(make_pair(3, "a"));
    v.push_back(make_pair(1, "b"));
    v.push_back(make_pair(4, "c"));

    BOOST_FOREACH(const string& item, v|elements_c<1>()) {
        cout << item << endl;
    }
}
a
b
c


便利べんり。