string类

class myString

{

public:

  myString()

  {

    len = 0;

    m_str = new char[1];

    m_str[0] = ‘\0’;

  }

 

  ~myString()

  {

    delete []m_str;

  }

 

  myString(const myString &obj)

  {

    len = obj.len;

    m_str = new char[len + 1];

    strcpy(m_str, obj.m_str);

  }

 

  myString& operator=(const myString &obj)

  {

    if (this == &obj)

    {

      return *this;

    }

 

    char *temp = new char[obj.len+ 1];

    strcpy(temp , obj.m_str);

 

    delete []m_str;

    len = obj.len;

    m_str = temp;

 

    return *this; // 方便实现a=b=c的链式表达式

  }

private:

  int len;

  char *m_str;

};

posted @ 2017-11-19 20:51  一种微笑  Views(93)  Comments(0)    收藏  举报