掘り出し物2

std::copyの使い方を確かめるやつが出てきた。

#include <iostream>
#include <fstream>
#include <list>
#include <sstream>
#include <iterator>
#include <string>
int main(void) {
    using std::istream_iterator;
    using std::ostream_iterator;
    using std::back_inserter
    {
        std::list<int> in, out;
        for (int i = 0; i < 10; ++i) {
            in.push_back(i);
        }
        std::copy(in.begin(), in.end(), back_inserter(out));
    }
    std::list<std::string> s;
    for (int i = 0; i < 10; ++i) {
        s.push_back(std::string("hoge"));
    }
    {
        std::list<std::string> o;
        std::copy(s.begin(), s.end(), back_inserter(o));
        std::cout << "list o copyed s :" << std::endl;
        std::copy(o.begin(), o.end(), ostream_iterator<std::string>(std::cout, "\n"));
    }
    {
        std::list<std::string> o;
        std::ifstream in("todo.txt");
        std::copy(istream_iterator<std::string>(in), istream_iterator<std::string>(), back_inserter(o));
        std::cout << "list o copyed in :" << std::endl;
        std::copy(o.begin(), o.end(), ostream_iterator<std::string>(std::cout, "\n"));
    }
    std::ifstream in("todo.txt");
    std::cout << "in :" << std::endl;
    std::copy(istream_iterator<std::string>(in),
        istream_iterator<std::string>(),
        ostream_iterator<std::string>(std::cout, "\n")
    );
}

そうそう、こんなのもあったなぁ。


最近はPHPJavaしかさわってない・・・