用户创建对象的属性不会打印 (C++)



我试图用一系列用户输入创建一个对象,但它似乎不起作用。

这是代码:(无错误发生(

制作类并使用构造函数,因此如果不是用户制作的,则更容易输入详细信息:

#include <iostream>
using namespace std;
class Person{
public:
string FirstName;
string Surname;
string Gender;
int Age;
double Money;
Person(string aFirstName, string aSurname, string aGender, int aAge, double aMoney){
aFirstName = FirstName;
aSurname = Surname;
aGender = Gender;
aAge = Age;
aMoney = Money;
}

};

声明稍后将被替换的变量,并使用用户输入获取它们:

int main(){
string bFirstName;
string bSurname;
string bGender;
int bAge;
double bMoney;
cout << "What is your character's First Name?" <<endl;
getline(cin, bFirstName);
cout << "What is your character's Surname?" <<endl;
getline(cin, bSurname);
cout << "What is your character's Gender?" <<endl;
getline(cin, bGender);
cout << "What is your character's Age?" <<endl;
cin >> bAge;
cout << "How much money does your character have?" <<endl;
cin >> bMoney;
// Then substituting the variables into an object:
Person Custom1(bFirstName, bSurname, bGender, bAge, bMoney);
// And finally trying to print the gender out 
// (I have tried all the other as well with no success) 
// and ending the program:
cout << Custom1.Gender;
return 0;
}

您的构造函数的初始化方式错误。试试这个:

Person(string aFirstName, string aSurname, string aGender, int aAge, double aMoney){
FirstName = aFirstName;
Surname = aSurname;
Gender = aGender;
Age = aAge;
Money = aMoney;
}

最新更新