如何使用vector将一个类的对象数组定义到不同文件中的其他类

时间:2014-01-22 10:27:27

标签: c++ vector setter getter

我想在我的user.h文件中使用对象数组(在data.h文件中)。我尝试了下面这个东西,但我的尝试没有成功。我想要你们的帮助。我的脚本有什么问题。请纠正我

// data.h文件

class data
{
    private:
        int id;
        char name;

    public:
        data();    
        int getid()

            {
                return id;
            }

        void setid(int id)
            {
                id = id;
            }

        char getname()

            {
                return name;
            }

        void setname(char name)
            {
                name=name;
            }
    };

// data.cpp文件

data::data(){

       int xyz;
       char pqr;
       data firstobject;
       firstobject.setid(10);
       xyz=firstobject.getid();
       firstobject.setname(hello);
       pqr=firstname.getname();
       return 0;
   }

// user.h文件

class user
{
    private:


        vector<data> data11;
    public:
        user();

        void add_element(int a)
        {
            data11.push_back(a);
        }

        void get_element()
        {
            for(int x=0; x<data11size(); x++)
            {
                cout<<data11[x]<<" \n";
            };
            cout<<" \n";
        }

};

// user.cpp文件

user::user()
{   user object;
    object.add_element(xyz);
    object.get_element();
}

2 个答案:

答案 0 :(得分:0)

这是您的constructor并定义为private?如果您没有任何具体原因,请将其移至public

data();

user()

相同

编辑:还有很多其他的事情......解释你正面临的问题

答案 1 :(得分:0)

这些是完整的文件吗?当然你需要

#include "data.h"  

在user.h中