二十一 字串類的建立

2022-08-11 13:48:17 字數 2249 閱讀 4512

c++可以通過類完成字串型別的定義,但是原生型別系統並沒有包含字串型別,而是在stl庫中。

但是不同的應用中,可能會使用不同的庫。

string類繼承自頂層父類object,具體實現時依賴於c語言關於字串函式的乙個包,即關於字串的函式集。

class string : public object

};

字串類建立的注意事項:

目標:高效地實現**復用

// dtstring.h

#ifndef string_h

#define string_h

#include "object.h"

namespace dtlib

;} // namespace dtlib

#endif // !string_h

// dtstring.cpp

#include #include #include "dtstring.h"

#include "exception.h"

using namespace std;

namespace dtlib

else

}string::string()

string::string(const char c)

; init(s);

}string::string(const char *s)

string::string(const string &s)

int string::length() const

const char *string::str() const

bool string::operator==(const string &s) const

bool string::operator==(const char *s) const // 針對char*

bool string::operator!=(const string &s) const

bool string::operator!=(const char *s) const // 針對char*

bool string::operator>(const string &s) const

bool string::operator>(const char *s) const // 針對char*

bool string::operator

bool string::operator

bool string::operator>=(const string &s) const

bool string::operator>=(const char *s) const // 針對char*

bool string::operator<=(const string &s) const

bool string::operator<=(const char *s) const // 針對char*

// 加法

string string::operator+(const string &s)

string string::operator+(const char *s)

else

return ret;

}string string::operator+=(const string &s)

string string::operator+=(const char *s)

// 過載賦值操作符

string string::operator=(const string &s)

string string::operator=(const char *s)

else

}return *this;

}string string::operator=(char c)

; return (*this = s);

}string::~string()

} // namespace dtlib

c/c++語言本身不支援字串類型別

c語言通過字元陣列和一組函式支援字串操作

c++通過自定義字串型別支援字串操作

字串型別通過c語言中的字串函式實現

(二十一)golang 字串中的函式

golang中ascii對應的字元佔乙個位元組,而漢字佔三個位元組。1 統計字串的長度len 2 字串遍歷,同時處理有中文的問題r rune str 3 字串轉整數 n,err strconv.atoi 12 4 整數轉字串 str strconv.ltoa 12345 5 字串轉bytes var...

指標學習十一 字串處理函式

輸入字串 scanf s s 輸入引數必須是字元型陣列名 gets 引數s是字元陣列名,輸入的字串允許帶空格 輸出字串 printf s s 輸出引數 可以是字元陣列名或字串常量 puts 引數s可以是字元陣列名或字串常量,成功執行後輸出字串,返回換行符 char str1 80 hello str...

字串類的建立過程

1 字串類的建立 字串類中的常用成員函式 過載陣列訪問操作符 char operator int i char operator int i const 注意事項 當i的取值不合法時,丟擲異常 合法範圍 0 i i m length char string operator int i else c...