c 自定義string類

2021-08-17 21:11:28 字數 1175 閱讀 3603

1.標頭檔案部分

#define _crt_secure_no_warnings

#pragma once

#include#includeusing namespace std;

class mystring

;

2.函式定義部分

#include "mystring.h"

mystring::mystring()

mystring::mystring(const char * str)

//拷貝建構函式

mystring::mystring(const mystring & another)

mystring::~mystring()

}mystring mystring::operator+(mystring & another)

mystring& mystring::operator=(mystring & another)

//銷毀自身之前對應的堆記憶體空間

if (this->str != null)

//執行深拷貝

int len = another.len;

this->len = len;

this->str = new char[len + 1];

strcpy(this->str, another.str);

//返回自身的引用

return *this;

}char & mystring::operator(int index)

bool mystring::operator==(mystring & another)

//其次判斷個數是否相等,個數不等false

if (this->len != another.len)

//最後就是通過操作符過載來判斷每乙個字元是否相等了

for (int i = 0; i < this->len; i++)

} return true;

}ostream & operator<<(ostream &os, mystring &s)

istream & operator>>(istream & is, mystring & s)

自定義string類

在學習c 過程中,相比起使用char 或者是char陣列,使用 string 類對字串進行操作要方便快速很多。string 並不是c 的基本資料型別,它實際上是乙個類,那麼這個類具體是怎麼實現對字串的操作的呢?如何去自定義乙個類去實現string類同樣的效果呢?首先,先列舉一些 string 類可以...

自定義string類

所需知識點 strcpy arg1,arg2 會把arg2的內容賦值給arg1,直到 0 為止,複製結束後會在arg1後加乙個 0 strlen 返回字串長度,只會返回 0 前字串的長度,如 123 0qweqr 返回值為3 std cin 遇到空格或回車符就結束輸入,遇到回車或eof會讀入 std...

C 實現自定義string類

在一些c 筆試題裡,會有這樣一道題,那就是讓你自己實現乙個簡單的string類。自己在面試的時候就遇到過這個題。在這裡說一下自己是怎麼做的。主要包含一些基本的操作,建構函式 拷貝建構函式和析構函式。pragma once include using namespace std class mystr...