C++ 获取编译错误:";标识符';objUser';是未定义的“;在我的main()函数中
我试图在main中从我的clsFamily类调用函数,但是,当我传递(&objUser)时,我收到一条消息,说明: 标识符“objUser”未定义 编辑:抱歉忘了提及,但我想要一个基于用户选择的动态向量数组 任何帮助都将不胜感激,因为这是一项下周四到期的任务C++ 获取编译错误:";标识符';objUser';是未定义的“;在我的main()函数中,c++,vector,compiler-errors,C++,Vector,Compiler Errors,我试图在main中从我的clsFamily类调用函数,但是,当我传递(&objUser)时,我收到一条消息,说明: 标识符“objUser”未定义 编辑:抱歉忘了提及,但我想要一个基于用户选择的动态向量数组 任何帮助都将不胜感激,因为这是一项下周四到期的任务 int UserChoice(); int UserChoice() { int iChoice = 0; int iAdults = 0; int iChildren = 0; cout << "How many
int UserChoice();
int UserChoice()
{
int iChoice = 0;
int iAdults = 0;
int iChildren = 0;
cout << "How many family members do you have? \n";
cin >> iChoice;
cout << "How many of these are adults? \n";
cin >> iAdults;
cout << "How many of these are children? \n";
cin >> iChildren;
return iChoice;
return iAdults;
return iChildren;
}
class clsUser
{
private:
string m_sName;
int m_iAge;
public:
void SetName(string);
string GetName();
void SetAge(int);
int GetAge();
clsUser();
~clsUser();
clsUser(string, int);
};
//This is to group the singular users into a group using a vector
class clsFamily
{
private:
vector <clsUser> objUser;
public:
void InputFamilyDetails(vector <clsUser> *objUser);
void OutputFamilyDetails(vector <clsUser> *objUser);
};
void clsFamily::InputFamilyDetails(vector <clsUser>* objUser)
{
string sName = "";
int iAge = 0;
for (int iCount = 0; iCount < objUser->size(); iCount++)
{
cout << "Please enter the name of family member " << iCount + 1 << "\n";
cin >> sName;
cout << "Please enter the age of family member " << iCount + 1 << "\n";
cin >> iAge;
objUser->at(iCount).SetName(sName);
objUser->at(iCount).SetAge(iAge);
}
}
//This is to allow the user to input the the details of the users from the vector
void clsFamily::OutputFamilyDetails(vector <clsUser>* objUser)
{
for (int iCount = 0; iCount < objUser->size(); iCount++)
{
cout << "The name of family member " << iCount + 1 << " is " << objUser->at(iCount).GetName() << " \n";
cout << "The age of family member " << iCount + 1 << " is " << objUser->at(iCount).GetAge()<< " \n";
}
}
int main()
{
clsFamily objFamily;
*//This is the area where the problem is occuring*
objFamily.InputFamilyDetails(&objUser);
objFamily.OutputFamilyDetails(&objUser);
}
intuserchoice();
int UserChoice()
{
int-iChoice=0;
int-iAdults=0;
int-iChildren=0;
cout>iChoice;
结果;
cout>iChildren;
返回iChoice;
返回结果;
返回iChildren;
}
clsUser类
{
私人:
字符串m_sName;
国际货币基金组织;
公众:
void SetName(字符串);
字符串GetName();
无效设置(int);
int GetAge();
clsUser();
~clsUser();
clsUser(字符串,int);
};
//这是使用向量将单个用户分组到一个组中
类CLS族
{
私人:
向量objUser;
公众:
无效输入FamilyDetails(向量*对象);
无效OutputFamilyDetails(向量*对象);
};
void clsFamily::InputFamilyDetails(向量*objUser)
{
字符串sName=“”;
int iAge=0;
对于(int-iCount=0;iCountsize();iCount++)
{
计算(iCount)。设置(iAge);
}
}
//这是为了允许用户从向量中输入用户的详细信息
void clsFamily::OutputFamilyDetails(向量*objUser)
{
对于(int-iCount=0;iCountsize();iCount++)
{
coutclsFamily
已经有一个objUser
成员。您不应该使用它,也不要在InputFamilyDetails
和OutputFamilyDetails
中使用参数:
class-clsFamily
{
私人:
vector objUser;//需要初始化一些大小
公众:
void InputFamilyDetails();
void OutputFamilyDetails();
};
void clsFamily::InputFamilyDetails()
{
字符串sName=“”;
int iAge=0;
对于(int-iCount=0;iCount coutclsFamily
已经有一个objUser
成员。您不应该使用它,也不要在InputFamilyDetails
和OutputFamilyDetails
中使用参数:
class-clsFamily
{
私人:
vector objUser;//需要初始化一些大小
公众:
void InputFamilyDetails();
void OutputFamilyDetails();
};
void clsFamily::InputFamilyDetails()
{
字符串sName=“”;
int iAge=0;
对于(int-iCount=0;iCount 请用一个标题来描述你的问题std::vector objUse(42);
似乎在main
中缺失(旁白:经过一点编辑,这看起来不是一个坏问题。如果你以后可以在聊天和恳求之外发表文章,你甚至可能会得到一些选票!祝你的问题好运)。请使用一个标题来描述您的问题std::vector objUse(42);
似乎在main
中缺失(旁白:经过一点编辑,这看起来不是一个坏问题。如果您可以在以后的帖子中减去聊天和恳求,您甚至可以获得一些支持票!祝您的问题好运)。谢谢你的帮助。但是,如果我根据用户的输入创建动态向量数组,这仍然有效吗?例如,用户输入5个家庭成员,为向量分配了5个内存块?谢谢你的帮助。但是,如果我根据用户的输入创建动态向量数组,这仍然有效吗?例如,用户输入5个家庭成员,将5个内存块分配给向量?