• 给vector对象添加元素的方法


    #include<iostream>
    #include<vector>
    
    using namespace std;
    
    int main()
    {
        //初始化10个元素,每个值都为0
        vector<int> fvec(10);
        //输出
        for(vector<int>::size_type ix=0;ix!=fvec.size();ix++)
            cout<<fvec[ix];
        cout<<endl;
        
        //下标法赋值 0-9
        for(vector<int>::size_type ix=0;ix!=fvec.size();ix++)
            fvec[ix]=ix;
        //输出
        for(vector<int>::size_type ix=0;ix!=fvec.size();ix++)
            cout<<fvec[ix];
        cout<<endl;
        
        
        return 0;
    }

    从上面可以看出,如果想要用下标法添加或者输出元素,数据的存储空间必须存在,无法动态的添加元素。

    动态添加元素的方法,是用vector对象的方法:push_back()

    #include<iostream>
    #include<vector>
    #include <string>
    
    using namespace std;
    
    int main()
    {
        //只有一个对象一个值
        vector<int> ivec;
        vector<string> strvec;
    
        //现在必须动态添加元素
        for(vector<int>::size_type ix=0;ix!=10;ix++)
            ivec.push_back(ix);
        for(vector<int>::size_type ix=0;ix!=ivec.size();ix++)
            cout<<ivec[ix];
        cout<<endl;
        string word;
        while(cin >> word)
        {
            strvec.push_back(word);
        }
        for(vector<int>::size_type ix=0;ix!=strvec.size();ix++)
            cout<<strvec[ix]<<endl;
        return 0;
    }

    注意:字符串输入结束符为 ctrl+z 回车。

    使用迭代器:

    #include<iostream>
    #include<vector>
    
    using namespace std;
    
    int main()
    {
        vector<int> ivec(10);
        //定义迭代器类型
        vector<int>::iterator iter;
        vector<int>::size_type ix;
        //现在必须动态添加元素
        for(iter=ivec.begin(),ix=0;iter!=ivec.end();iter++,ix++)
            *iter=ix;
        //输出
        for(vector<int>::size_type ix=0;ix!=ivec.size();ix++)
            cout<<ivec[ix];
        cout<<endl;    
        return 0;
    }
  • 相关阅读:
    个人工作总结07
    软件项目第一个Sprint评分
    丹佛机场行李系统没能及时交工的原因
    第一次团队冲刺 5
    第一次团队冲刺4
    第一次团队冲刺3
    第一次团队冲刺2
    第一次团队冲刺 1
    风险评估
    团队开发——第一篇scrum报告
  • 原文地址:https://www.cnblogs.com/qiangua/p/3715571.html
Copyright © 2020-2023  润新知