#include #include #include using std::cout; using std::endl; int millisec_elapsed(struct timeval start, struct timeval end) { int seconds = end.tv_sec - start.tv_sec; int micros = end.tv_usec - start.tv_usec; int millis = (seconds * 1000) + (micros / 1000); return millis; } void time_size(std::list& lst) { cout << "call std::list::size() now " << endl; struct timeval t1, t2; gettimeofday(&t1, NULL); int size = lst.size(); gettimeofday(&t2, NULL); cout << "size of list is: " << size << " determined in " << millisec_elapsed(t1, t2) << " milli seconds." << endl; } int main(int argc, char* argv[]) { std::list list1; for (int i = 0 ; i < 100000000 ; ++i) { if ( i % 1000000 == 0 ) { time_size(list1); } list1.push_back(1); } return 0; }