Array与Vector容器赋值效率比较

对比代码:

#include <iostream>
#include <vector>
#include <array>
#include <ctime>

const int count = 6000;
using std::vector;
using std::array;

int _tmain(int argc, _TCHAR* argv[])
{
    vector<int> v(count);
    array<int, count> a;

     time_t start,stop;
     start = clock();
     for (int j = 0; j < count; ++j)
     {
         for (int i = 0; i < count; ++i)
         {
             v[i] = i;
             //v.push_back(i);
         }
      }
    
     stop = clock();
     printf("Vector Use Time:%ld\n",(stop-start));
     start = clock();
     for (int j = 0; j < count; ++j)
     {
         for (int i = 0; i < count; ++i)
         {
             a[i] = i;
             //a.at(i) = i;
         }
     }
     stop = clock();
     printf("Array Use Time:%ld\n",(stop-start));
    std::system("pause");
	return 0;
}

 效果:

Array与Vector容器赋值效率比较

a[i] = i;与a.at(i) = i;效率一样。

v[i] = i; 比v.push_back(i);的时间少;