C++中<array>的使用


//在使用c语言或cpp创建数组时,大量使用new和delete,很不爽
//现在改用使用<array>,很方便,用起来和STL<vector>一样的
//执行效率比<vector>高,几乎和int myarray[5]效率一样
//将以下代码保存为testarray.cpp,格式为UTF-8,使用MinGW编译:
//g++ testarray.cpp -std=c++0x

  1. #include <iostream>   
  2. #include <array>      
  3. using namespace std;  
  4.   
  5. int main ()  
  6. {  
  7.      //-----------------------------------------------   
  8.   //--这是1维数组   
  9.     array<int,5> myarray={1,2,3,4,5};  
  10.  //-----------------------------------------------   
  11.   cout <<"myarray="<<endl;  
  12.   for (size_t n=0; n<myarray.size(); n++){  
  13.       cout << myarray[n] <<'\t';  
  14.   }  
  15.   cout << endl;  
  16.   //-----------------------------------------------   
  17.   //当然也可以使用   
  18.   cout <<"myarray="<<endl;  
  19.   for (size_t n=0; n<myarray.size(); n++){  
  20.       cout << myarray.at(n) << '\t';  
  21.   }  
  22.    cout << endl;  
  23.  //-----------------------------------------------   
  24.   //--这是2维数组,共3行2列   
  25.   array<array<int,2>,3 > myarray2D={1,2,3,4,5,6};  
  26.   //-----------------------------------------------   
  27.   cout <<"myarray2D="<<endl;  
  28.   for (size_t m=0; m<myarray2D.size(); m++){  
  29.     for (size_t n=0; n<myarray2D[m].size(); n++){      
  30.         cout << myarray2D[m][n] <<'\t';  
  31.     }   
  32.    cout << endl;   
  33.   }  
  34.   cout << endl;  
  35.   //-----------------------------------------------   
  36.     
  37.   return 0;  
  38. }  

当你想要一个执行时效率高,而用不想自己管理内存的时候,就用它。

相关内容