标签:
主要4默认功能重写:
代码:
#include <iostream> using namespace std; class Cstring{ private : char * data; public : Cstring(const char * str =NULL); Cstring(const Cstring &another); ~Cstring(); Cstring & operator=(const Cstring &another); }; //赋值构造函数 Cstring & Cstring::operator=(const Cstring &another){ if(this == &another) return *this; delete [] data; data = NULL; data = new char(strlen(another.data) + 1 ); strcpy(data,another.data); return * this; } //普通构造函数 Cstring::Cstring(const char *str){ if(str == NULL){ data = new char[1]; data[0] = '\0'; }else{ data = new char[strlen(str)+1]; strcpy(data,str); } } //拷贝构造函数 Cstring::Cstring(const Cstring & another){ data = new char(strlen(another.data) + 1); strcpy(data,another.data); } //析构函数 Cstring ::~Cstring(){ delete data; } void main(){ Cstring str("hello,world"); Cstring st(str),test2; Cstring test1 = test2 = st; }
版权声明:本文博客原创文章,转载请注明出处 http://blog.csdn.net/buyingfei8888
标签:
原文地址:http://www.cnblogs.com/yxwkf/p/4669343.html