#pragma once #include <iostream> #include <cstring> using namespace std;class CMessage { private : char * pmessage; public : CMessage (const char * text = "中国一点也不能少!" ) { pmessage = new char [strlen (text) + 1 ]; strcpy_s (pmessage, strlen (text) + 1 , text); } void show () { cout << pmessage << endl; } CMessage (const CMessage& oMes) { size_t len = strlen (oMes.pmessage) + 1 ; pmessage = new char [len]; strcpy_s (pmessage, len, oMes.pmessage); } ~CMessage () { cout << "Destructor called!" << endl; delete []pmessage; } }; int main () { CMessage Mes1 ("爱我中华!" ) ; CMessage Mes2 (Mes1) ; Mes1. show (); Mes2. show (); return 0 ; }
爱我中华! 爱我中华! Destructor called! Destructor called!
本章是对《类与对象之析构函数和动态内存分配》的一个补充(