1 #ifndef TIMER_CLASS
2 #define TIMER_CLASS
3
4 #include <time.h> // declares clock_t type, function clock(),
5 // and constant CLOCKS_PER_SEC
6
7 class timer
8 {
9 private:
10
11 // starting and ending time measured in clock ticks
12 clock_t startTime, endTime;
13
14 public:
15 timer();
16 // initialize the timer.
17 // Postconditions: set the starting and ending event times to 0.
18 // this creates an event whose time is 0.0
19
20 void start();
21 // start timing an event.
22 // Postcondition: record the current time as the starting time
23 void stop();
24 // stop timing an event.
25 // Postconditon: record the current time as the ending time
26 double time() const;
27 // return the time the event took in seconds by computing
28 // the difference between the ending and starting times.
29 };
30
31 // ***********************************************************
32 // timer class implementation
33 // ***********************************************************
34
35 // constructor. set starting and ending times to 0
36 timer::timer():startTime(0), endTime(0)
37 {}
38
39 // determine clock ticks at start
40 void timer::start()
41 {
42 startTime = clock();
43 }
44
45 // determine clock ticks at end
46 void timer::stop()
47 {
48 endTime = clock();
49 }
50
51 // return the elapsed time in seconds
52 double timer::time() const
53 {
54 return (endTime-startTime)/double(CLOCKS_PER_SEC);
55 }
56
57 #endif // TIMER_CLASS
58
59
posted on 2009-08-31 21:28
diwayou 阅读(550)
评论(0) 编辑 收藏 引用 所属分类:
数据结构与算法