From b3c27f3d075489d7299eb90f121c8f4878b88dbe Mon Sep 17 00:00:00 2001 From: Angel Dimitriev Date: Tue, 15 Mar 2022 19:44:55 +0200 Subject: Create Student_example.cpp --- Sem. 04/Student_example.cpp | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 Sem. 04/Student_example.cpp diff --git a/Sem. 04/Student_example.cpp b/Sem. 04/Student_example.cpp new file mode 100644 index 0000000..954b3bf --- /dev/null +++ b/Sem. 04/Student_example.cpp @@ -0,0 +1,37 @@ +#include +#include +#include +using namespace std; + +struct Student +{ + char* name; + int age; + + Student(const char* name, int age) + { + this->name = new char[strlen(name) + 1]; + strcpy(this->name, name); + this->age = age; + } + + void print() const + { + std::cout << "Name: " << name << ", age: " << age << std::endl; + } + ~Student() + { + delete[] name; + } +}; +int main() +{ + Student s("Ivan", 33); + + Student* ptr = new Student("Petur", 17); + + s.print(); + ptr->print(); + + delete ptr; //calls destructor of ptr +}//calls destructor of s -- cgit v1.3.1-23-gd82d