掘り出し物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") ); }
そうそう、こんなのもあったなぁ。