Advertisement
RobertDeMilo

RB2.2 Второе правило оптимизации кода

Apr 15th, 2024 (edited)
49
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.14 KB | None | 0 0
  1. #include <iostream>
  2. #include <vector>
  3. #include <chrono>
  4. #include <string>
  5.  
  6. using namespace std;
  7. using namespace std::chrono;
  8.  
  9. vector<string> GenerateBigVector()
  10. {
  11.     vector<string> result;
  12.  
  13.     auto start = steady_clock::now();
  14.     for (int i = 0; i < 28000; ++i)
  15.     {
  16.         //result.insert(begin(result), to_string(i));
  17.         result.push_back(to_string(i));
  18.     }
  19.     auto finish = steady_clock::now();
  20.  
  21.     auto duration = finish - start;
  22.     cerr << "Cycle:" << duration_cast<milliseconds>(duration).count() << endl;
  23.  
  24.     return result;// (лишнее копирование)
  25. }
  26.  
  27. //void GenerateBigVector(vector<string>& result)
  28. //{
  29. //  for (int i = 0; i < 28000; ++i)
  30. //  {
  31. //      result.insert(begin(result), to_string(i));
  32. //  }
  33. //}
  34.  
  35. int main()
  36. {
  37.     //vector<string> result;
  38.  
  39.     /*GenerateBigVector(result);
  40.     cout << result.size();*/
  41.  
  42.     auto start = steady_clock::now();
  43.     cout << GenerateBigVector().size() << endl;
  44.     auto finish = steady_clock::now();
  45.  
  46.     auto duration = finish - start;
  47.     cerr << "Total:" << duration_cast<milliseconds>(duration).count() << endl;
  48.  
  49.     return 0;
  50. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement