問題及**:
/*
* 檔名稱: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 定義日...