본문 바로가기
프로그램/C++ 1000제

C++ 116제] 어서와! C++은 처음이지! CHAPTER 09. PROGRAMMING EXERCISE 3. p394

by 건티 2024. 11. 4.
728x90

출처 : 반크_백제역사 유적지구와 이스탐블 역사지구

 

참고풀이]

#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
#include <cstring> //strcpy()
using namespace std;

class MyClass {
public:
   MyClass(const char* str);
   MyClass(const MyClass& other); //복사생성자를 선언한다.
   void Show();
   ~MyClass();
private:
   char* stored;
   char* Str;
};

MyClass::MyClass(const char* str)
{
   stored = new char[strlen(str) + 1];
   strcpy(stored, str);
}

MyClass::MyClass(const MyClass& other) //복사생성자를 작성한다.
{
   this->stored = new char[strlen(other.stored) + 1];
   strcpy(this->stored, other.stored);
}

void MyClass::Show()
{
   cout << stored << endl;
}


MyClass::~MyClass()
{
   delete[] stored;
}

int main()
{
   char A[21] = "Compare value String";

   MyClass mc1("Copy Consting!");
   MyClass mc2(mc1);

   mc1.Show();
   mc2.Show();

   return 0;
}

 

참고풀이 결과]

 

 

 

 

 

대한민국의 아름다운 영토, 독도

 

 

반응형

댓글