两者效率对比:
#include <iostream> #include <string> #include <map> #include <unordered_map> #include <sys/time.h> #include <list> using namespace std; template<class T> void fun(const T& t, int sum) { for(int i = 0; i < sum; i++) t.find(i); } template<template <class...> class T> float init(int sum) { T<int,int> t; for(int i = 0; i < sum; i++) t.insert(make_pair(i,i)); struct timeval begin,end; gettimeofday(&begin,NULL); fun(t,sum); gettimeofday(&end,NULL); float time = end.tv_sec-begin.tv_sec + float(end.tv_usec-begin.tv_usec)/1000000; cout<<"