连续第一百天

来源:互联网 发布:cf自动准备源码 编辑:程序博客网 时间:2024/04/28 15:34

编写类String的构造函数、析构函数和赋值函数,已知类String的原型为

class String{  public:   String(constchar*str = NULL);   String(const String &other);   ~ String(void);   String & operator =(const String &other);  private:   char*m_data; };  解答:String::String(constchar*str) { if(str==NULL)  {  m_data =newchar[1];   *m_data ='\0';  }  else {  int length = strlen(str);   m_data =newchar[length+1];   strcpy(m_data, str);  }}String::~String(void) { delete [] m_data; // 或deletem_data;String::String(const String &other)    int length = strlen(other.m_data);  m_data =newchar[length+1];      strcpy(m_data, other.m_data); }String & String::operator =(const String &other){  if(this==&other)     return*this;  delete [] m_data;     int length = strlen( other.m_data );  m_data =newchar[length+1];   strcpy( m_data, other.m_data );  return*this;         }


0 0