如何将元素添加到对象矢量并打印它们?

时间:2016-10-16 15:11:05

标签: c++ object vector printing iterator

我们的老师告诉我们创建一个对象矢量并对其执行操作,但我无法理解如何正确地执行此操作:我尝试使用最少的数据创建一个简单的项目,以便我可以知道我在做什么

我有这个班级

class VettObj{

    private:

        vector<Obj> vett;

    public:

        VettObj();

        void setVett();
        void stampaVett();

};

然后这个,带有Obj

的向量
void VettObj::setVett(){


    Obj temp;
    int i;

    i = 0;
    while(i < 5){


        temp.setNum(10);

        vett.push_back(temp);

        i++;
    }

}

我最初的想法是使用迭代器,但我只是弄得一团糟,而且几乎无用的研究,我决定使用一个通用的整数计数器。

我发现我不应该在VettObj costructor中写任何东西,因为它会自动初始化东西,所以我把它留空了。

添加元素的方法是

void VettObj::stampaVett(){


    int i;

    i = 0;
    while(i < 5){

        vett[i].getNum();

        i++;
    }

}

打印元素的那个

div {
  max-width: 200px;
  word-wrap: break-word;
}

当我编译时,一切顺利,但是当我运行程序时,屏幕上什么都没有。我不想使用大多数矢量函数(如果没有必要),因为我看到很多人都可以这样做。我真的很想知道如何使用迭代器。帮助请????

1 个答案:

答案 0 :(得分:0)

你实际上并没有在stampaVett()方法中打印任何东西。 您可以尝试:

void VettObj::stampaVett(){

    int i = 0;

    while (i < 5){

        std::cout << vett[i].getNum();

        i++;
    }

}

我还建议使用英语作为方法或变量而不是意大利语,因为SO是一个国际社区。