zoukankan      html  css  js  c++  java
  • c++ vector

    前几天网友问我c++里面的vector的使用,现在对vector进行简单总结,共享CSDN网友。说明:东西比较简单,如果你很牛,请直接关闭本页!

    首先是vector的声明:
    #include <vector>
    using namespace std; // 在这里声明
    ...
    vector<int> i;
    ... 
    或者
    #include <vector>
    ...
    std::vector<int> i; // 在这里显式声明

    看具体使用:
    1.vector 的数据的存入和输出:

    [cpp] view plaincopy
     
    1. vector<CString> v;  
    2. for(int i =0;i<40;i++)  
    3. {  
    4.     CString s;  
    5.     s.Format("%d",i);  
    6.     v.push_back(s);  
    7. }  
    8. CString ss ;  
    9. for(int j =0;j<v.size();j++)  
    10. {  
    11.     ss+=v[j]+",";  
    12. }  
    13. MessageBox(ss);  

    注:你也可以用v.begin()和v.end() 来得到vector开始的和结束的元素地址的指针位置。你也可以这样做:

    [cpp] view plaincopy
     
    1. vector<CString> v;  
    2. for(int i =0;i<40;i++)  
    3. {  
    4.     CString s;  
    5.     s.Format("%d",i);  
    6.     v.push_back(s);  
    7. }  
    8. CString ss ;  
    9. vector<CString>::iterator iter;  
    10. for( iter = v.begin(); iter != v.end(); iter++ )   
    11. {  
    12.     ss+= *iter+",";  
    13. }  
    14. MessageBox(ss);  

    2.对于二维vector的定义(开始就固定长度)

    [cpp] view plaincopy
     
    1. vector< vector<CString> > Array( 10, vector<CString>(0) );   
    2. for( int j = 0; j < 10; j++ )  
    3. {  
    4.     for (int i = 0; i < 9; i++ )  
    5.     {  
    6.         CString s;  
    7.             s.Format("%d",i);  
    8.         Array[ i ].push_back(s);  
    9.     }  
    10. }  
    11.   
    12. CString ss;  
    13. for( int jj = 0; jj < 10; jj++ )  
    14. {  
    15.     for(int ii = 0; ii < Array[ jj ].size(); ii++ )  
    16.     {  
    17.         ss+=Array[jj][ii];  
    18.     }  
    19. }  
    20. MessageBox(ss);  

    3.定义一个行列都是变化的数组

    [cpp] view plaincopy
     
    1. int i = 0, j = 0;  
    2. vector< vector<CString> > Array;  
    3. vector< CString > line;  
    4. for( j = 0; j < 10; j++ )  
    5. {  
    6.     Array.push_back( line );//要对每一个vector初始化,否则不能存入元素。  
    7.     for ( i = 0; i < 9; i++ )  
    8.     {  
    9.         CString s;  
    10.             s.Format("%d",i);  
    11.         Array[ j ].push_back( s );  
    12.     }  
    13. }  
    14.   
    15. CString ss;  
    16. for(int jj = 0;jj<Array.size();jj++)  
    17. {  
    18.     for(int ii =0;ii<Array[jj].size();ii++)  
    19.     {  
    20.         ss+=Array[jj][ii];  
    21.     }  
    22. }  
    23. MessageBox(ss);  
  • 相关阅读:
    WPF DataGrid
    邮箱格式验证
    Spring Cloud微服务学习笔记
    你必须知道的MySQL知识点
    你必须掌握的分布式事务知识点
    重试操作下如何实现幂等?
    你必须掌握的关于JVM知识点
    RocketMQ开发者指南
    二分查找解题套路框架
    回溯算法解题套路框架
  • 原文地址:https://www.cnblogs.com/xzh1993/p/4913681.html
Copyright © 2011-2022 走看看