美文网首页
c++ primer 阅读 day7

c++ primer 阅读 day7

作者: HenryTien | 来源:发表于2017-12-28 15:23 被阅读7次

3.3 标准库类型 vector

3.3.1 定义和初始化vector对象

可以默认初始化vector对象
vector<string> svec; //默认初始化,svec不包含任何元素。

列表初始化vector对象
vector<string> articles ={"a","an","the"};
如果是初始元素值的列表,那么只能放在花括号里进行列表初始化,而不能放在圆括号里。

#include<iostream>
#include<vector>

int main()
{
    std::vector<int> ivec;
    ivec.push_back(1);
    std::cout<<ivec[0]<<std::endl;

    //列表初始化
    std::vector<std::string> articles = {"a","b","c"};
    for(int32_t i = 0;i<articles.size();i++)
    {
        std::cout<<articles[i];
    }
    std::cout<<std::endl;
    std::cout<<articles[0]<<std::endl;

    std::vector<int> ivec_same(10,-1);
    std::cout<<ivec_same[0]<<std::endl;

    int32_t i = 10;
    std::vector<int> iDefualtVec; // 默认初始化
    std::vector<int> iTestCopy(iDefualtVec);  //元素拷贝
    std::vector<int> iCopyVec(10); //值初始化
    std::vector<int> iTest = iCopyVec;  //拷贝初始化
    std::cout<<iTest[0]<<std::endl;
  //  std::cout<<iTestCopy[0]<<std::endl;

    std::vector<std::string> v5(10);
    std::cout<<v5[0]<<std::endl;

    std::vector<std::string> v6{10};  //10个默认初始化元素
    std::cout<<v6[0]<<std::endl;

    std::vector<std::string> v7{2,"hello"};
    for(int32_t i  = 0;i < v7.size();i++)
    {
           std::cout<<v7[i];
    }

    return 0;
}

3.3.2 向Vector对象中添加元素

note
如果for语句中添加vector对象的元素,则不能使用范围for循环。

#include<iostream>
#include<vector>

using namespace std;
int main()
{
    vector<int> v2;  // 空vector
    for(int32_t i = 0; i < 100; i++)
        v2.push_back(i);

    for(auto iter = v2.begin();iter!=v2.end();++iter)
        cout<<*iter<<" ";
        cout<<endl;

    string word;
    vector<string> text; // 空vector对象
    while(cin>>word)
        text.push_back(word);

    for(auto iter1 = text.begin(); iter1!=text.end();++iter1)
    {
        cout<<*iter1<<" ";
    }
    return 0;
}

求元素的平方

vector<int> vNum;
    int32_t iNum = 0;
    cout<<"number: ";
    while(cin>>iNum)
        vNum.push_back(iNum);

    for(auto &iResult : vNum)
        iResult *= iResult;

    for(auto i:vNum)
        cout<<i<<" ";

相关文章

网友评论

      本文标题:c++ primer 阅读 day7

      本文链接:https://www.haomeiwen.com/subject/iiergxtx.html