第九周閱讀程式配備了搜尋功能的字串類

2021-07-02 07:59:32 字數 2488 閱讀 1724

問題及**:

/* 

* 檔名稱:test.cpp

* 作 者:郝俊宇

* 完成日期:2023年 5 月9 日

* 版 本 號:v1.0

* 輸入描述:輸入字串

* 程式輸出:對應的結果

*/ /*對於要定義的字串類cmystring,

資料成員包括:

- 字串的長度;

- 指向字串第乙個字元的指標

成員函式包括:

- 不帶引數的建構函式;

- 帶乙個型別為const char *型別的引數(用於對字串初始化)的建構函式;

- 帶乙個const cmystring&型別的複製構造引數;

- 析構函式;

- strlen函式 (用於求字串的長度);

- int find(char c) (找出字元c在本字串中第一次出現的位置,並返回其下標;如果本字串中不包含c,則返回-1);

- int find(const char *str1) ( 找出字串str1在本字串中第一次出現的位置,並返回其下標;如果本字串中不包含字串str1,則返回-1),

- int find(const cmystring& str1) (找出字串str1在本字串中第一次出現的位置,並返回其下標;如果本字串中不包含字串str1,則返回-1),

- int replace(char c1, char c2) (將本字串中出現的所有字元c1用字元c2替換, 返回替換的次數);

- void replace(const char *str1, const char *str2) (將本字串中第一次出現的字串str1用字串str2替換);

- void display() (用於顯示字串)

對運算子+=等進行過載,例如,設str1和str2是兩個cmystring類的物件,

- 用str1[i]表示字串str1的下標為i的字元;

- str1+str2的結果是將str2連在str1的後面,並將結果仍然存放在 str1中;

- 用=表示賦值。

(2)編寫主函式,定義幾個cmystring類的物件,並利用鍵盤輸入字串的內容,程式設計驗證以上定義的所有函式。

*/#include #include #include using namespace std;

class cmystring

{private:

int m_nlen;

char *m_szstr;

public:

cmystring(void);

cmystring(const char *str);

cmystring(const cmystring& str1);

~cmystring(void);

int strlen(void);

int find(char c);

int find(const char *str1);

int find(const cmystring& str1);

int replace(char c1, char c2);

void replace(const char *str1, const char *str2);

char& operator(int i);

cmystring operator+(const cmystring& str1);

cmystring& operator=(const cmystring& str1);

void display()

{cout<=0)

{int len1=strlen(str1),len2=strlen(str2);

if (len1!=len2) //str1與str2長度不相等

{int len=m_nlen-len1+len2;

char *result=new char[len+1];

//求出cmystring物件從str1往後的字串將其存放與字串temp中

char *temp;

temp=new char[m_nlen-i-len1+1];

for (j=0; jm_nlen-1)

{cout

cin.getline(str_1,20,'\n');

cout<

cin.getline(str_2,20,'\n');

cmystring str4(str_1),str5(str_2);

cout<>c1;

cout<

cin>>c2;

cmystring str6(str_3);

cout

cout<

cin>>str_6;

cmystring str7(str_4);

cout<

執行結果:

第九周閱讀程式3

檔名稱 main.cpp 作 者 隋文韜 完成日期 2016年5月26日 版 本 號 v1.0 問題描述 閱讀程式 結果分析 定義乙個aa類的物件a1,執行建構函式,輸出constructor,a2執行複製建構函式,輸出copy constructor,輸出a2的a 2 1 3,b 3 2 5,定義...

第九周閱讀程式 具搜尋功能的字串類

對於要定義的字串類cmystring,資料成員包括 字串的長度 指向字串第乙個字元的指標 成員函式包括 不帶引數的建構函式 帶乙個型別為const char 型別的引數 用於對字串初始化 的建構函式 帶乙個const cmystring 型別的複製構造引數 析構函式 strlen函式 用於求字串的長...

第九周閱讀程式一 學生資訊管理系統

閱讀程式 簡單c 學生資訊管理系統 找出其中出現建構函式 友元函式 運算子過載 靜態數成員語法現象出現的位置,仔細體會其用法,在以後的設計中能夠靈活應用有關方法和技巧。include include using namespace std define max 100 class cdate 定義日...