from:
之所以拋棄char*的字串而選用c++標準程式庫中的string類,是因為他和前者比較起來,不必擔心記憶體是否足夠、字串長度等等,而且作為乙個泛型類出現,他整合的操作函式足以完成我們大多數情況下(甚至是100%)的需要。我們可以用 = 進行賦值操作,== 進行比較,+ 做串聯(是不是很簡單?)。我們盡可以把它看成是c++的基本資料型別。
c++中對於strinig的定義為:typedef basic_stringstring; 也就是說c++中的string類是乙個泛型類,由模板而例項化的乙個標準類,本質上不是乙個標準資料型別。
好了,進入正題………
首先,為了在我們的程式中使用string型別,我們必須包含標頭檔案 。如下:
#include //注意這裡不是string.h string.h是c字串標頭檔案
string 函式列表
函式名描述
begin
得到指向字串開頭的iterator
end得到指向字串結尾的iterator
rbegin
得到指向反向字串開頭的iterator
rend
得到指向反向字串結尾的iterator
size
得到字串的大小
length
和size函式功能相同
max_size
字串可能的最大大小
capacity
在不重新分配記憶體的情況下,字串可能的大小
empty
判斷是否為空
operator
取第幾個元素,相當於陣列
c_str
取得c風格的const char* 字串
data
取得字串內容位址
operator=
賦值操作符
reserve
預留空間
swap
交換函式
insert
插入字元
追加字元
push_back
追加字元
operator+=
+= 操作符
erase
刪除字串
clear
清空字元容器中所有內容
resize
重新分配空間
assign
和賦值操作符一樣
replace
替代copy
字串到空間
find
查詢rfind
反向查詢
find_first_of
查詢包含子串中的任何字元,返回第乙個位置
find_first_not_of
查詢不包含子串中的任何字元,返回第乙個位置
find_last_of
查詢包含子串中的任何字元,返回最後乙個位置
find_last_not_of
查詢不包含子串中的任何字元,返回最後乙個位置
substr
得到字串
compare
比較字串
operator+
字串鏈結
operator==
判斷是否相等
operator!=
判斷是否不等於
operator<
判斷是否小於
operator>>
從輸入流中讀入字串
operator<<
字串寫入輸出流
getline
從輸入流中讀入一行
體驗新版部落格
String型別詳解
第一篇 你真的了解.net中的string 注 來自於網路 string在任何語言中,都有它的特殊性,在.net中也是如此。它屬於基本資料型別,也是基本資料型別中唯一的引用型別。字串可以宣告為常量,但是它卻放在了堆中。希望通過本文能夠使大家對.net中的string有乙個深入的了解。一 不可改變物件...
String型別詳解
字串是乙個特殊的物件,從api文件的對string宣告 public final class 中可以看出該類不可以被繼承。以上是對字串的描述,接下來通過例項展現string的型別的一些用法 很多人碰到這個問題 string s 123 這裡有幾個物件。在這裡,s為類型別變數,123 為乙個物件。變數...
C 之string定義 用法詳解
string用法 1,定義 string str 初始化 可以直接給string型別的變數賦值 string str abcd 使用時,需要加上標頭檔案 include using namespace std 2,string中內容訪問 一般來說,可以直接像字串陣列一樣取訪問 示例 include ...