String::~String(void) { delete []m_data; } (3)拷贝构造函数 String::String(const String &other) { Int length = strlen(other); m_data = new char[length+1]; Strcpy(m_data,other.m_data); } (4)赋值函数 String & String::operate = (const String &other) { If(this == &other)...
String(constchar*str = NULL);//普通构造函数String(constString &other);//拷贝构造函数~String(void);//析构函数String &operator= (constString &other);//赋值函数private:char*m_data;//用于保存字符串}; 各个解析: 1、构造函数 /* 1、构造函数在构造对象时使用; 2、传入参数的判断; 3、对象的初始...
(1)构造函数、析构函数与赋值函数 构造函数、析构函数与赋值函数是每个类最基本的函数。它们太普通以致让人容易麻痹大意, 其实这些貌似简单的函数就象没有顶盖的下水道那样危险。 每个类只有一个析构函数和一个赋值函数,... 苦涩的茶 0 4496 C++中构造函数,拷贝构造函数和赋值函数的区别和实现 ...
data[len]='\0'; }~String() {//析构函数cout <<"析构函数被调用"<<endl;delete[]data;//释放内存data = NULL;//置空指针} String&operator= (constString &other) {//赋值构造函数cout <<"赋值运算符构造函数被调用"<<endl;intlen =strlen(other.data); data=newchar[len +1];for(inti =0;...
class String { public: String(const char *str = NULL);// 普通构造函数 String(const String &other); // 拷贝构造函数 ~ String(void); // 析构函数 String & operate =(const String &other);// 赋值函数 private: char *m_data;// 用于保存字符串 }; 解答 //普通构造函数 String::String(...
1classString2{3public:4String(constchar*str = NULL);//普通构造函数5String(constString &other);//拷贝构造函数6~ String(void);//析构函数7String & operate =(constString &other);//赋值函数8private:9char*m_data;//用于保存字符串10}; ...
String::~String()//析构函数 {delete []m_data; } String::String(constString &other)//拷贝构造函数 {if(other.m_data==NULL) {m_data=newchar[1]; *m_data='\0'; } else {m_data=newchar[strlen(other.m_data)+1]; strcpy(m_data,other.m_data); ...
class MyString { public: MyString(const char *str = nullptr);//普通构造函数,加nullptr包含无参的情况 MyString(const MyString &other);//拷贝构造函数 ~MyString();//析构函数 MyString& operator=(const MyString &other);//赋值函数,返回一个对象的引用 MyString& operator+(const MyString &other...