Добавить 2.cpp
This commit is contained in:
317
2.cpp
Normal file
317
2.cpp
Normal file
@@ -0,0 +1,317 @@
|
||||
//#pragma warning(disable:4996)
|
||||
//#include <iostream>
|
||||
//#include <stdio.h>
|
||||
//#define MAX_SIZE 50
|
||||
//#define MAX_L 4096
|
||||
//using namespace std;
|
||||
//struct StudentStruct {
|
||||
// //public
|
||||
// int id{ 0 };
|
||||
// void setId(int id) {
|
||||
// if(this->id ==0) this->id = id;
|
||||
// }
|
||||
//};
|
||||
//
|
||||
//class Student {
|
||||
//
|
||||
//public:
|
||||
// void setId(int id);
|
||||
//
|
||||
// void setName(char* name_);
|
||||
//
|
||||
// void setInform(const char* inf);
|
||||
//
|
||||
// int getId()const;
|
||||
//
|
||||
// const char* getName()const;
|
||||
//
|
||||
// //char* getInform()const {
|
||||
// // return (inform != nullptr) ? inform : new char[MAX_SIZE] {"NoInform"};
|
||||
// //}
|
||||
// const char* getInform()const;
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
// void show()const;
|
||||
//
|
||||
// const char* studentToString()const;
|
||||
////protected:
|
||||
// // Student(){}
|
||||
// //
|
||||
// //Student(){
|
||||
// // id = 0;
|
||||
// // strcpy(name, "NoName");
|
||||
// // inform = nullptr;
|
||||
// //}
|
||||
//
|
||||
// Student();
|
||||
//
|
||||
// Student(int id, const char* name_);
|
||||
//
|
||||
// Student(int id, const char* name_, const char* inf);
|
||||
//
|
||||
// ~Student();
|
||||
//private:
|
||||
// int id;// { 0 };
|
||||
// char name[MAX_SIZE];// {"NoName"};
|
||||
// char* inform;// { nullptr };
|
||||
//};
|
||||
//
|
||||
//inline void Student::setId(int id) {
|
||||
// if (this->id == 0) this->id = id;
|
||||
//}
|
||||
//
|
||||
//inline void Student::setName(char* name_) {//(const char*)
|
||||
// if (name_ == nullptr) return;
|
||||
// strcpy_s(name, strlen(name_) + 1, name_);
|
||||
//}
|
||||
//
|
||||
//inline void Student::setInform(const char* inf) {
|
||||
// if (inf == nullptr) return;
|
||||
// if (inform != nullptr) delete[] inform;//?
|
||||
// inform = new char[strlen(inf) + 1];
|
||||
// strcpy_s(inform, strlen(inf) + 1, inf);
|
||||
//}
|
||||
//
|
||||
//inline int Student::getId()const {
|
||||
// return id;
|
||||
//}
|
||||
//
|
||||
//inline const char* Student::getName()const {
|
||||
// char* str = new char[MAX_L] { "" };
|
||||
// strcpy(str, name);
|
||||
// return str;
|
||||
//}
|
||||
//
|
||||
//inline const char* Student::getInform()const {
|
||||
// if (inform == nullptr) return "NoInform";
|
||||
// char* str = new char[MAX_L] { "" };
|
||||
// strcpy(str, inform);
|
||||
// return str;
|
||||
//}
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//inline void Student::show()const {
|
||||
// cout << "Id= " << id
|
||||
// << "\nName " << name
|
||||
// << "\nInform " << getInform()// ((inform != nullptr) ? inform : "NoInform")
|
||||
// << endl;
|
||||
//}
|
||||
//
|
||||
//inline const char* Student::studentToString()const {
|
||||
// char* str = new char[MAX_L] { "" };
|
||||
// //strcat_s(str, "Id= ");
|
||||
// sprintf(str, "Id = %d \nName %s \nInform %s ", id, name, getInform());
|
||||
// //%d %i - int
|
||||
// //%f %e %g -float double
|
||||
// //%s - string const char* char*
|
||||
// return str;
|
||||
//}
|
||||
//
|
||||
//
|
||||
//Student::Student() :id{ 0 }, name{ "NoName" }, inform{ nullptr }{
|
||||
// cout << "\n Create student: " << this << endl;
|
||||
//}
|
||||
//
|
||||
//Student::Student(int id, const char* name_) :id{ id }, inform{ nullptr }{
|
||||
// /* if (name_ == nullptr) return;
|
||||
// strcpy_s(name, strlen(name_) + 1, name_);*/
|
||||
// cout << "\n Create student: " << this << endl;
|
||||
// setName((char*)name_);
|
||||
//}
|
||||
//
|
||||
//Student::Student(int id, const char* name_, const char* inf) :id{ id } {
|
||||
// /* if (name_ == nullptr) return;
|
||||
// strcpy_s(name, strlen(name_) + 1, name_);
|
||||
// if (inf == nullptr) return;
|
||||
// inform = new char[strlen(inf) + 1];
|
||||
// strcpy_s(inform, strlen(inf) + 1, inf);*/
|
||||
// cout << "\n Create student: " << this << endl;
|
||||
// setName((char*)name_);
|
||||
// setInform(inf);
|
||||
//}
|
||||
//
|
||||
//Student::~Student() {
|
||||
// cout << "\n Delete student: " << this << endl;
|
||||
// if (inform != nullptr) delete[] inform;
|
||||
//}
|
||||
//
|
||||
//int main() {
|
||||
// //int a;
|
||||
// //a = 5;
|
||||
// //int b{ 5 };
|
||||
// //auto c = 5;
|
||||
// {
|
||||
// Student student;
|
||||
// cout << "\nStudent( create):\n"
|
||||
// << student.studentToString()
|
||||
// << endl;
|
||||
// Student student1{2, "Olya" };
|
||||
// student1.show();
|
||||
// Student* pStud = new Student(3, "Sasha");
|
||||
// pStud->show();
|
||||
// Student student3{ 12,"Ivan","Good student"};
|
||||
// cout << "\nStudent: " << student3.studentToString() << endl;
|
||||
// delete pStud;
|
||||
// }//~Student()
|
||||
//
|
||||
// cout << "End program" << endl;
|
||||
// //system("pause");
|
||||
// system("pause");
|
||||
//}
|
||||
|
||||
#pragma warning(disable:4996)
|
||||
#include <iostream>
|
||||
#include <stdio.h>
|
||||
#define MAX_SIZE 50
|
||||
#define MAX_L 4096
|
||||
#define PHONE 15
|
||||
#define BIRTDATE 20
|
||||
using namespace std;
|
||||
|
||||
class Student {
|
||||
public:
|
||||
Student(int id = 0, const char* name = "NoName", const char* birthDate = "NoDate", const char* phone = "0000000000",
|
||||
const char* city = "NoCity", const char* country = "NoCountry", const char* university = "NoUniversity", const char* group = "NoGroup");
|
||||
~Student();
|
||||
|
||||
void setId(int id);
|
||||
int getId() const;
|
||||
|
||||
void setName(const char* name);
|
||||
const char* getName() const;
|
||||
|
||||
void setBirthDate(const char* birthDate);
|
||||
const char* getBirthDate() const;
|
||||
|
||||
void setPhone(const char* phone);
|
||||
const char* getPhone() const;
|
||||
|
||||
void setCity(const char* city);
|
||||
const char* getCity() const;
|
||||
|
||||
void setCountry(const char* country);
|
||||
const char* getCountry() const;
|
||||
|
||||
void setUniversity(const char* university);
|
||||
const char* getUniversity() const;
|
||||
|
||||
void setGroup(const char* group);
|
||||
const char* getGroup() const;
|
||||
|
||||
const char* studentToString() const;
|
||||
|
||||
private:
|
||||
int id;
|
||||
char name[MAX_SIZE];
|
||||
char birthDate[BIRTDATE];
|
||||
char phone[PHONE];
|
||||
char city[MAX_SIZE];
|
||||
char country[MAX_SIZE];
|
||||
char university[MAX_SIZE];
|
||||
char group[MAX_SIZE];
|
||||
};
|
||||
|
||||
Student::Student(int id, const char* name, const char* birthDate, const char* phone,
|
||||
const char* city, const char* country, const char* university, const char* group) : id(id) {
|
||||
setName(name);
|
||||
setBirthDate(birthDate);
|
||||
setPhone(phone);
|
||||
setCity(city);
|
||||
setCountry(country);
|
||||
setUniversity(university);
|
||||
setGroup(group);
|
||||
cout << "\n Create student: " << this << endl;
|
||||
}
|
||||
|
||||
Student::~Student() {
|
||||
cout << "\n Delete student: " << this << endl;
|
||||
}
|
||||
|
||||
void Student::setId(int id) {
|
||||
this->id = id;
|
||||
}
|
||||
|
||||
int Student::getId() const {
|
||||
return id;
|
||||
}
|
||||
|
||||
void Student::setName(const char* name) {
|
||||
strncpy(this->name, name, MAX_SIZE - 1);
|
||||
this->name[MAX_SIZE - 1] = '\0';
|
||||
}
|
||||
const char* Student::getName() const {
|
||||
return name;
|
||||
}
|
||||
|
||||
void Student::setBirthDate(const char* birthDate) {
|
||||
strncpy(this->birthDate, birthDate, MAX_SIZE - 1);
|
||||
this->birthDate[MAX_SIZE - 1] = '\0';
|
||||
}
|
||||
const char* Student::getBirthDate() const {
|
||||
return birthDate;
|
||||
}
|
||||
|
||||
void Student::setPhone(const char* phone) {
|
||||
strncpy(this->phone, phone, MAX_SIZE - 1);
|
||||
this->phone[MAX_SIZE - 1] = '\0';
|
||||
}
|
||||
const char* Student::getPhone() const {
|
||||
return phone;
|
||||
}
|
||||
|
||||
void Student::setCity(const char* city) {
|
||||
strncpy(this->city, city, MAX_SIZE - 1);
|
||||
this->city[MAX_SIZE - 1] = '\0';
|
||||
}
|
||||
const char* Student::getCity() const {
|
||||
return city;
|
||||
}
|
||||
|
||||
void Student::setCountry(const char* country) {
|
||||
strcpy_s(this->country, country);
|
||||
//this->country[MAX_SIZE - 1] = '\0';
|
||||
}
|
||||
const char* Student::getCountry() const {
|
||||
return country;
|
||||
}
|
||||
|
||||
void Student::setUniversity(const char* university) {
|
||||
strncpy(this->university, university, MAX_SIZE - 1);
|
||||
this->university[MAX_SIZE - 1] = '\0';
|
||||
}
|
||||
const char* Student::getUniversity() const {
|
||||
return university;
|
||||
}
|
||||
|
||||
void Student::setGroup(const char* group) {
|
||||
strncpy(this->group, group, MAX_SIZE - 1);
|
||||
this->group[MAX_SIZE - 1] = '\0';
|
||||
}
|
||||
const char* Student::getGroup() const {
|
||||
return group;
|
||||
}
|
||||
|
||||
const char* Student::studentToString() const {
|
||||
static char str[MAX_L];
|
||||
sprintf(str, "ID: %d\nName: %s\nBirth Date: %s\nPhone: %s\nCity: %s\nCountry: %s\nUniversity: %s\nGroup: %s\n",
|
||||
id, name, birthDate, phone, city, country, university, group);
|
||||
return str;
|
||||
}
|
||||
|
||||
int main() {
|
||||
Student student{ 1, "Vova"};
|
||||
cout << student.studentToString() << endl;
|
||||
|
||||
Student student1{ 2, "Alice", "02/03/2000" };
|
||||
cout << student1.studentToString() << endl;
|
||||
|
||||
Student* pStud = new Student(3, "Bob", "15/08/1999", "9876543210", "Los Angeles", "USA", "Stanford", "CS102");
|
||||
cout << pStud->studentToString() << endl;
|
||||
delete pStud;
|
||||
|
||||
return 0;
|
||||
}
|
||||
Reference in New Issue
Block a user