#include <iostream>
#include <stdlib.h>
#include <cstring>
using namespace std;
class Mystring{
public:
Mystring(){ //无参构造函数
str = NULL;
}
Mystring(char *p){ //有参构造
if (p != NULL){
int len = sizeof(p);
str = (char *)malloc(len);
}
}
Mystring(const Mystring &ano_str){
this->str=NULL;
str = (char *)malloc(sizeof(ano_str.str));
strcpy(str,ano_str.str);
}
~Mystring(){ //析构
if (str != NULL){
free(str);
str=NULL;
}
}
Mystring& operator+ (const Mystring &another){
int n = sizeof(another.str)+sizeof(this->str);
str=(char *)realloc(str,n);
strcat(str,another.str);
return *this;
}
#if 1
Mystring& operator= (const char *str1){
str =(char *)realloc(str,sizeof(str1));
strcpy(str,str1);
return *this;
}
#endif
Mystring& operator= (const Mystring &another){
str =(char *)realloc(str,sizeof(another.str));
strcpy(str,another.str);
return *this;
}
char *getstr(){
return this->str;
}
private:
char * str;
}
C++ Mystring类
最新推荐文章于 2023-04-16 10:41:06 发布