Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "iostream"
- using namespace std;
- class Student
- {
- public:
- Student()
- {
- strinit(name);
- strinit(birthdate);
- strinit(phone_number);
- strinit(city);
- strinit(country);
- strinit(study);
- strinit(group_name);
- count++;
- }
- Student(const char* name, const char* birthdate, const char* phone_number, const char* city, const char* country, const char* study, const char* group_name)
- {
- setstr(this->name, name);
- setstr(this->birthdate, birthdate);
- setstr(this->phone_number, phone_number);
- setstr(this->city, city);
- setstr(this->country, country);
- setstr(this->study, study);
- setstr(this->group_name, group_name);
- count++;
- }
- ~Student()
- {
- delete[] name;
- delete[] birthdate;
- delete[] phone_number;
- delete[] city;
- delete[] country;
- delete[] study;
- delete[] group_name;
- count--;
- }
- void Input()
- {
- const int size = 256;
- char buffer[size];
- cout << "Enter name: ";
- getstr(buffer, size, name);
- cout << "Enter birthdate: ";
- getstr(buffer, size, birthdate);
- cout << "Enter phone number: ";
- getstr(buffer, size, phone_number);
- cout << "Enter city: ";
- getstr(buffer, size, city);
- cout << "Enter country: ";
- getstr(buffer, size, country);
- cout << "Enter study: ";
- getstr(buffer, size, study);
- cout << "Enter group name: ";
- getstr(buffer, size, group_name);
- }
- void Print()
- {
- cout << "Here's your student:\n";
- cout << "Name: " << name << endl
- << "Birthdate: " << birthdate << endl
- << "Phone number: " << phone_number << endl
- << "City: " << city << endl
- << "Country: " << country << endl
- << "Study: " << study << endl
- << "Group name: " << group_name << endl;
- }
- const char* getName()
- {
- return name;
- }
- void setName(const char* name)
- {
- setstr(this->name, name);
- }
- const char* getBirthdate()
- {
- return birthdate;
- }
- void setBirthdate(const char* birthdate)
- {
- setstr(this->birthdate, birthdate);
- }
- const char* getPhoneNumber()
- {
- return phone_number;
- }
- void setPhoneNumber(const char* phone_number)
- {
- setstr(this->phone_number, phone_number);
- }
- const char* getCity()
- {
- return city;
- }
- void setCity(const char* city)
- {
- setstr(this->city, city);
- }
- const char* getCountry()
- {
- return country;
- }
- void setCountry(const char* country)
- {
- setstr(this->country, country);
- }
- const char* getStudy()
- {
- return study;
- }
- void setStudy(const char* study)
- {
- setstr(this->study, study);
- }
- const char* getGroupName()
- {
- return group_name;
- }
- void setGroupName(const char* group_name)
- {
- setstr(this->group_name, group_name);
- }
- static void printCount()
- {
- cout << "Student count: " << count << endl;
- }
- private:
- char* name;
- char* birthdate;
- char* phone_number;
- char* city;
- char* country;
- char* study;
- char* group_name;
- static int count;
- void setstr(char*& dst, const char* scr)
- {
- delete[] dst;
- dst = new char[strlen(scr) + 1];
- strcpy_s(dst, strlen(scr) + 1, scr);
- }
- void getstr(char* buffer, int size, char* scr)
- {
- cin.getline(buffer, size);
- setstr(scr, buffer);
- }
- void strinit(char*& str)
- {
- str = new char;
- *str = '\0';
- }
- };
- int Student::count = 0;
- int main()
- {
- return 0;
- }
Add Comment
Please, Sign In to add comment