blob: c972df426ea26a24e685edb105ffa4b5b35405f3 [file] [log] [blame]
// io_ex1.cpp ----------------------------------------------------------//
// Copyright 2010 Howard Hinnant
// Copyright 2010 Vicente J. Botet Escriba
// Distributed under the Boost Software License, Version 1.0.
// See http://www.boost.org/LICENSE_1_0.txt
/*
This code was adapted by Vicente J. Botet Escriba from Hinnant's html documentation.
Many thanks to Howard for making his code available under the Boost license.
*/
#include <boost/chrono/chrono_io.hpp>
#include <sstream>
#include <iostream>
#include <boost/assert.hpp>
int main()
{
using namespace boost::chrono;
using std::cout;
high_resolution_clock::time_point t0 = high_resolution_clock::now();
std::stringstream io;
io << t0;
BOOST_ASSERT(!io.fail());
cout << io.str() << '\n';
BOOST_ASSERT(!io.fail());
high_resolution_clock::time_point t1;
io >> t1;
BOOST_ASSERT(!io.fail());
cout << io.str() << '\n';
cout << t0 << '\n';
cout << t1 << '\n';
high_resolution_clock::time_point t = high_resolution_clock::now();
cout << t << '\n';
cout << "That took " << t - t0 << '\n';
cout << "That took " << t - t1 << '\n';
return 0;
}
//~ 50908679121461 nanoseconds since boot
//~ That took 649630 nanoseconds