fork(2) download
  1. #include <iostream>
  2. #include <chrono>
  3. #include <vector>
  4. #include <tuple>
  5.  
  6. using namespace std;
  7. using namespace std::chrono;
  8.  
  9. void function()
  10. {
  11. long long number = 0;
  12.  
  13. for( long long i = 0; i != 2000000; ++i )
  14. {
  15. number += 5;
  16. }
  17. }
  18.  
  19. int main()
  20. {
  21. high_resolution_clock::time_point t1 = high_resolution_clock::now();
  22. high_resolution_clock::time_point t3 = high_resolution_clock::now();
  23. high_resolution_clock::time_point t5 = high_resolution_clock::now();
  24. function();
  25. high_resolution_clock::time_point t2 = high_resolution_clock::now();
  26. high_resolution_clock::time_point t4 = high_resolution_clock::now();
  27. high_resolution_clock::time_point t6 = high_resolution_clock::now();
  28.  
  29. auto duration1 = std::chrono::duration_cast<std::chrono::microseconds>( t2 - t1 ).count();
  30. auto duration2 = std::chrono::duration_cast<std::chrono::microseconds>( t4 - t3 ).count();
  31. auto duration3 = std::chrono::duration_cast<std::chrono::microseconds>( t6 - t5 ).count();
  32.  
  33. auto durations = std::make_tuple(duration1,duration2,duration3);
  34.  
  35. std::vector<std::tuple<std::chrono::microseconds,std::chrono::microseconds,std::chrono::microseconds>> list;
  36. list.push_back(durations);
  37.  
  38. cout << duration1 << " -- "<< duration2 << " -- "<< duration3 << " -- ";
  39. return 0;
  40. }
Compilation error #stdin compilation error #stdout 0s 3272KB
stdin
Standard input is empty
compilation info
prog.cpp: In function 'int main()':
prog.cpp:36:29: error: no matching function for call to 'std::vector<std::tuple<std::chrono::duration<long long int, std::ratio<1ll, 1000000ll> >, std::chrono::duration<long long int, std::ratio<1ll, 1000000ll> >, std::chrono::duration<long long int, std::ratio<1ll, 1000000ll> > > >::push_back(std::tuple<long long int, long long int, long long int>&)'
     list.push_back(durations);
                             ^
prog.cpp:36:29: note: candidates are:
In file included from /usr/include/c++/4.9/vector:64:0,
                 from prog.cpp:3:
/usr/include/c++/4.9/bits/stl_vector.h:913:7: note: void std::vector<_Tp, _Alloc>::push_back(const value_type&) [with _Tp = std::tuple<std::chrono::duration<long long int, std::ratio<1ll, 1000000ll> >, std::chrono::duration<long long int, std::ratio<1ll, 1000000ll> >, std::chrono::duration<long long int, std::ratio<1ll, 1000000ll> > >; _Alloc = std::allocator<std::tuple<std::chrono::duration<long long int, std::ratio<1ll, 1000000ll> >, std::chrono::duration<long long int, std::ratio<1ll, 1000000ll> >, std::chrono::duration<long long int, std::ratio<1ll, 1000000ll> > > >; std::vector<_Tp, _Alloc>::value_type = std::tuple<std::chrono::duration<long long int, std::ratio<1ll, 1000000ll> >, std::chrono::duration<long long int, std::ratio<1ll, 1000000ll> >, std::chrono::duration<long long int, std::ratio<1ll, 1000000ll> > >]
       push_back(const value_type& __x)
       ^
/usr/include/c++/4.9/bits/stl_vector.h:913:7: note:   no known conversion for argument 1 from 'std::tuple<long long int, long long int, long long int>' to 'const value_type& {aka const std::tuple<std::chrono::duration<long long int, std::ratio<1ll, 1000000ll> >, std::chrono::duration<long long int, std::ratio<1ll, 1000000ll> >, std::chrono::duration<long long int, std::ratio<1ll, 1000000ll> > >&}'
/usr/include/c++/4.9/bits/stl_vector.h:931:7: note: void std::vector<_Tp, _Alloc>::push_back(std::vector<_Tp, _Alloc>::value_type&&) [with _Tp = std::tuple<std::chrono::duration<long long int, std::ratio<1ll, 1000000ll> >, std::chrono::duration<long long int, std::ratio<1ll, 1000000ll> >, std::chrono::duration<long long int, std::ratio<1ll, 1000000ll> > >; _Alloc = std::allocator<std::tuple<std::chrono::duration<long long int, std::ratio<1ll, 1000000ll> >, std::chrono::duration<long long int, std::ratio<1ll, 1000000ll> >, std::chrono::duration<long long int, std::ratio<1ll, 1000000ll> > > >; std::vector<_Tp, _Alloc>::value_type = std::tuple<std::chrono::duration<long long int, std::ratio<1ll, 1000000ll> >, std::chrono::duration<long long int, std::ratio<1ll, 1000000ll> >, std::chrono::duration<long long int, std::ratio<1ll, 1000000ll> > >]
       push_back(value_type&& __x)
       ^
/usr/include/c++/4.9/bits/stl_vector.h:931:7: note:   no known conversion for argument 1 from 'std::tuple<long long int, long long int, long long int>' to 'std::vector<std::tuple<std::chrono::duration<long long int, std::ratio<1ll, 1000000ll> >, std::chrono::duration<long long int, std::ratio<1ll, 1000000ll> >, std::chrono::duration<long long int, std::ratio<1ll, 1000000ll> > > >::value_type&& {aka std::tuple<std::chrono::duration<long long int, std::ratio<1ll, 1000000ll> >, std::chrono::duration<long long int, std::ratio<1ll, 1000000ll> >, std::chrono::duration<long long int, std::ratio<1ll, 1000000ll> > >&&}'
stdout
Standard output is empty