Задание:
Код:
Person.h
Person.cpp
usrPerson.cpp
Выводит все, кроме age(Возраста) и имени(string name). Т.к новенький, сложно понять, потому что код компилируется и все значения присваиваются.
Цитата:
Создать класс Person со свойствами name, gender, age, married и методами чтения/установки этих свойств. Добавить метод Print - распечатка сведений о человеке |
Person.h
Код:
#include <string>
#ifndef PERSON_H
#define PERSON_H
class Person
{
private:
bool gender, married;
std::string name[3];
int age;
public:
int GetAge() { return age; }
std::string GetName() { return name[2]; }
void GetGen(int g) { if (g) gender = false; else gender = true; }
void GetMar(int m) { if (m) married = false; else married = true; }
void Check();
void SetAge(int);
void SetName(std::string);
void Print();
};
#endif
Код:
#include <iostream>
#include "Person.h"
void Person::Check()
{
if (gender) name[0] = "Male";
else name[0] = "Female";
if (married) name[1] = "Married";
else name[1] = "Single";
}
void Person::Print()
{
std::cout << "Name: " << Person::GetName() << " Age: " << age << " " << name[0] << " " << name[1];
}
void Person::SetAge(int _a)
{
_a = age;
}
void Person::SetName(std::string _str)
{
_str = name[2];
}
Код:
#include <iostream>
#include <string>
#include "Person.h"
int main()
{
int _g,_m;
int _a = 10;
std::string str;
Person a;
std::cout << "Input your name: \n";
std::cin >> str;
a.SetName(str);
std::cout << "Input your age: \n";
std::cin >> _a;
a.SetAge(_a);
std::cout << "Input your gender: \n 0 - Male, 1 - Female\n";
std::cin >> _g;
a.GetGen(_g);
std::cout << "Input your marrige: \n 0 - Married, 1 - Single \n";
std::cin >> _m;
a.GetMar(_m);
a.Check();
a.Print();
return 0;
}