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

C++ 如何将元素添加到对象向量并打印它们?,c++,object,vector,printing,iterator,C++,Object,Vector,Printing,Iterator,我们的老师告诉我们创建一个对象向量并对其执行操作,但我不知道如何正确地做到这一点:我试图用最少的数据制作一个简单的项目,这样我就可以知道我在做什么 我有这门课 class Obj { private: int num; public: Obj(); void setNum(int nuovo_num); int getNum(); }; 然后这个,有一个Obj向量 class VettObj{

我们的老师告诉我们创建一个对象向量并对其执行操作,但我不知道如何正确地做到这一点:我试图用最少的数据制作一个简单的项目,这样我就可以知道我在做什么

我有这门课

class Obj {

    private:

        int num;

    public:

        Obj();

        void setNum(int nuovo_num);
        int getNum();

};
然后这个,有一个Obj向量

class VettObj{

    private:

        vector<Obj> vett;

    public:

        VettObj();

        void setVett();
        void stampaVett();

};
class-VettObj{
私人:
病媒兽医;
公众:
VettObj();
void setVett();
void stampaVett();
};
我最初的想法是使用一个迭代器,但我只是把事情搞得一团糟,在几乎毫无用处的研究下,我决定使用一个通用的整数计数器

我发现我不应该在VettObj构造函数中写入任何内容,因为它会自动初始化内容,所以我将其留空

添加元素的方法如下

void VettObj::setVett(){


    Obj temp;
    int i;

    i = 0;
    while(i < 5){


        temp.setNum(10);

        vett.push_back(temp);

        i++;
    }

}
void-VettObj::setVett(){
Obj温度;
int i;
i=0;
而(i<5){
温度设定值(10);
检查推回(温度);
i++;
}
}
还有那个打印元素的

void VettObj::stampaVett(){


    int i;

    i = 0;
    while(i < 5){

        vett[i].getNum();

        i++;
    }

}
void-VettObj::stampaVett(){
int i;
i=0;
而(i<5){
vett[i].getNum();
i++;
}
}

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

您实际上没有使用stampaVett()方法打印任何内容。 您可以尝试:

void VettObj::stampaVett(){

    int i = 0;

    while (i < 5){

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

        i++;
    }

}
void-VettObj::stampaVett(){
int i=0;
而(i<5){

std::cout解决此类问题的正确工具是调试器。在询问堆栈溢出问题之前,您应该逐行检查代码。有关更多帮助,请阅读。至少,您应该[编辑]您的问题将包括一个重现您的问题的示例,以及您在调试器中所做的观察。提出一个特定的问题。您的程序起源的详细背景故事与任何事情都无关。您可能应该从“Hello World”开始.你为什么认为在你的程序中,任何东西都会被打印在屏幕上?它不会神奇地读懂你的心思,并做你想做的事。是的,就是这样:最后,我所做的研究并没有白费。谢谢。