请问下面的程序哪里有问题 ?
#include <iostream>
#include <vector>
#include <list>
#include <set>
#include <stdlib.h>
#include <ctime>
using namespace std;
template <class T>
void arrayinsert(T a[],T collection[],int size)
{
for(int i=0;i<size;i++)
a[i]=collection[i];
}
template <class T>
void vectorinstert( vector <T>* a,T *collection,int size)
{
for(int i=0;i<size;i++)
a->push_back(collection[i]);
}
template <class T>
void listinsert(list <T>* a,T *collection,int size)
{
for(int i=0;i<size;i++)
a->push_back(collection[i]);
}
template <class T>
void multisetinsert(multiset <T>* a,T *collection,int size)
{
for(int i=0;i<size;i++)
a->insert(collection[i]);
}
/*int *getIntData(int size)
{
int *data=new int [size];
generate(&data[0],&data[size],rand);
return data;
}*/
template <class T>
void getdata(T *data, int size)
{
srand(unsigned (0));
for(int i=0;i<size;i++)
data[i]=rand()%100;
}
void costtime()
{
time_t start,end;
time(&start);
// ...
time(&end);
cout<<"costing time "<<(end-start)*CLOCKS_PER_SEC<<"ms..."<<endl;
}
int main()
{
int b[1000000],collection[1000000];
getdata(collection,1000000);
time_t start,end;
time(&start);
arrayinsert(b,collection,1000000);
time(&end);
cout<<"costing time "<<(end-start)*CLOCKS_PER_SEC<<"ms..."<<endl;
vector <int>a[1000000];
time(&start);
vectorinstert(a,collection,1000000);
time(&end);
cout<<"costing time "<<(end-start)*CLOCKS_PER_SEC<<"ms..."<<endl;
list <int>c[1000000];
time(&start);
listinsert(c,collection,1000000);
time(&end);
cout<<"costing time "<<(end-start)*CLOCKS_PER_SEC<<"ms..."<<endl;
multiset <int>d[1000000];
time(&start);
multisetinsert(d,collection,1000000);
time(&end);
cout<<"costing time "<<(end-start)*CLOCKS_PER_SEC<<"ms..."<<endl;
return 0;
}