Guest User

Untitled

a guest
Jun 24th, 2018
91
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.19 KB | None | 0 0
  1. #include <algorithm>
  2. #include <vector>
  3. #include <ctime>
  4.  
  5. const size_t iter_count = 10000;
  6. const size_t data_size = 10000;
  7.  
  8. int range_rand(int lo, int hi)
  9. {
  10. return lo + rand() / (RAND_MAX / (hi - lo + 1) + 1);
  11. }
  12.  
  13. class SomeClass
  14. {
  15. public:
  16. SomeClass(size_t data_size)
  17. : data_size_(data_size)
  18. , data_(data_size)
  19. {
  20. std::generate(data_.begin(), data_.end(), rand);
  21. std::sort(data_.begin(), data_.end());
  22. }
  23.  
  24. void doSomethingUseful()
  25. {
  26. data_.clear();
  27. }
  28. private:
  29. const size_t data_size_;
  30. std::vector<int> data_;
  31. };
  32.  
  33. void test1()
  34. {
  35. for (size_t i = iter_count; i > 0; --i)
  36. {
  37. SomeClass c(data_size);
  38. if (0 == i % 10) //if (x == y)
  39. {
  40. c.doSomethingUseful();
  41. }
  42. }
  43. } // test1()
  44.  
  45. void test2()
  46. {
  47. for (size_t i = iter_count; i > 0; --i)
  48. {
  49. if (0 == i % 10) //if (x == y)
  50. {
  51. SomeClass c(data_size);
  52. c.doSomethingUseful();
  53. }
  54. }
  55. } // test2()
  56.  
  57. int main(int argc, char* argv[])
  58. {
  59. srand(time(NULL));
  60. if (argc > 1)
  61. {
  62. test1();
  63. }
  64. else
  65. {
  66. test2();
  67. }
  68. }
Add Comment
Please, Sign In to add comment