運算子過載(實現CString類)

2021-05-22 00:20:31 字數 1180 閱讀 8636

private:

char*m_pdate;

public:

//建構函式

cstring::cstring(){};

//拷貝構造

cstring::cstring(const cstring& t_cstring)

if(m_pdate!=null)

deletem_pdate;

m_pdate=new char[strlen(t_cstring.m_pdate)+1] //分配空間

strcpy(m_pdate,t_cstring.m_pdate);

//析造函式

cstring::~cstring()

if(m_pdate!=null)

deletem_pdate;

//過載=

cstring&cstring::operator=(const cstring& t_cstring)

if(m_pdate!=null)

deletem_pdate;

m_pdate=new char[strlen(t_cstring.m_pdate)+1] //分配空間

strcpy(m_pdate,t_cstring.m_pdate);

return *this;

//過載==

bool cstring::operator==(const cstring& t_cstring)

if(strcpy(m_pdate,t_cstring_m_pdate)==0)

return true;

else

return false;

//過載+

cstring&cstring::operator+(const cstring& t_cstring)

cstring* temp;

int a_len=strlen(this.m_pdate);

int b_len=strlen(t_cstring.m_pdate);

temp->m_pdate=new char[a_len+b_len+1] //分配空間

strcpy(temp->m_pdate,m_pdate);                //複製字串

strcat(temp->m_pdate,t_cstring.m_pdate)   //連線字串

return *temp;

c String類的運算子過載 21

一,建立測試程式包 測試 如下 date 2017 5 4 description string operator overload test program filename string operator.h author myron zhou ifndef string operator h ...

C String類中的運算子過載

模組化設計 標頭檔案 ifndef operator operator h define operator operator h include include using namespace std class mystring endif 功能函式 include operator.h 預設建構...

c String字串類的運算子過載

在c 中有乙個新定義的型別string,可以不用那麼麻煩的操作字串,並且一些高階的運算子過載讓她的使用更加便捷 下面是string類的定義和成員函式的定義 ifndef operator operator h define operator operator h include includeusi...