C++实现一个string类

来源:互联网 发布:阿里云大学官网 编辑:程序博客网 时间:2024/06/15 20:58
#include<iostream>using namespace std;class String{private:    char * m_data;public:    String(char *data);    ~String();    String(const String& str);    String& operator =(const String& str);};String::String(char *data){    if(data==NULL)    {        m_data=new char;        *m_data='\0';    }    else    {        int n=strlen(data);        m_data=new char[n+1];        strcpy(m_data,data);    }}String::~String(){    delete []m_data;}String::String(const String &str){    delete [] m_data;    int n=strlen(str.m_data);    m_data=new char[n+1];    strcpy(m_data,str.m_data);}String& String::operator=(const String &str){    if(&str==this)    {        return *this;    }    else    {        int n=strlen(str.m_data);        delete []m_data;        m_data=new char[n+1];        strcpy(m_data,str.m_data);        return *this;    }}int main(){    char * a="hello world";    string b=a;    string c="hh";    b=c;}

原创粉丝点击