如何使用 String 類別


C 並不具備字串的資料型別,字串對 C 而言不過是位元組的陣列,所以字串的操作必須靠函式庫來達成。

而在 C++ 中,我們可以製作出類似其他語言字串的類別; VCL 即定義了一個 AnsiString 類別,可用來操作動態字串。

註: String 在 SYSDEFS.H 中被 typedef 為 AnsiString 。

AnsiString 類別包含一個指標,指向一個記錄 (record)。這個記錄包含參考計數 (reference count)、字串長度及本文。
而每一個字串的產生都需要到"堆積區"(heap)配置記憶體;並且當你想將 AnsiString 設定給另一個時,只要把參考計數+1,以及將新變數的指標指向該記錄即可,就不會有額外的記憶體配置及字串複製的工作了。

在 dstring.h 中定義了 AnsiString 的建構子 :

( dstring.h 通常會自行引入,但當製作一些 Console APP 時,可能需要 #include)

AnsiString 也定義了許多操作元和函式 :

1.比較運算子 (==,!=,<,>,<=,>=)

2.轉換為 C (c_str)

3.查詢字串屬性

4. 字串唯一化 (Unique)

5. 修改字串

6. 轉換字串

在 dstring.h 及 sysdefs.h 中,還有很多有用的資訊,花些時間研究,會對 AnsiString 的了解很有幫助。

 


回主網頁  回網路教學