1 標頭檔案
#include
2 string類的常用建構函式:
string str——構造空的string類物件,即空字串
string str
(str1)——str1 和 str 一樣
string str
("abc"
)——等價於 str=
"abc"
string str
("abc"
,strlen)——等價於 "abc" 存入 str 中,最多儲存 strlen 個位元組
string str
("abc"
,stridx,strlen)——等價於 "abc" 的stridx 位置,
作為字串開頭,存到str中,最多儲存 strlen 個位元組
string str
(srelen,
'a')——儲存 strlen 個 'a' 到 str 中
3 元素的訪問
4 assign函式:
5 insert函式方法:
str.
insert(2
,3,'a'
)——在str下標為2的位置新增 3個 字元'a'
str.
insert(2
,"abc"
)——在str下標為2的位置新增 字串 "abc"
str.
insert(2
,"abc",1
)——在str下標為2的位置新增 字串 "abc" 中 1個 字元
str.
insert(2
,"abc",1
,1)——在str下標為2的位置新增 字串 "abc" 中
從位置 1 開始的 1 個字元
//注:上個函式引數中加粗的 1 ,可以是 string::npos,這時候最大值,
//從 位置1 開始後面的全部字元
str.
insert
( iterator pos, size_type count, chart ch )——在 str 中,
迭代器指向的 pos位置 插入 count個 字元 ch
s4.insert
(++str1.
begin()
,2,'a'
); 結果:s4:abcd -
> aaabcd
str.
insert
( iterator pos, inputit first, inputit last )——
在 str 中,pos位置 插入 str1 的 開始位置 到 結束為止
6 擦除
7 反轉相關:
(位於標頭檔案
)reverse
(str.
begin()
,str.
end(
))——str的開始 到 結束字元反轉
reverse
(s4.begin,s4.end)
; 結果:s4:abcd -
> dcba
8 查詢相關:
str.
find
('a'
)——查詢 'a'
str.
find
("abc"
)——查詢 "abc"
int n=s4.
find
("abc"
); s4:abcd -
> n =
0 str.
find
('b',1
)——從 位置1 處,查詢'b'
str.
find
("abc",1
,2)——從 位置1 處,開始查詢 'abc' 的前 2個 字元
str.
rfind
('a'
)——查詢 'a'
str.
rfind
("abc"
)——查詢 "abc"
int n=s4.
rfind
("abc"
); s4:aaaabcd -
> n =
3 str.
rfind
('b',1
)——從 位置1 處,向前查詢'b'
str.
rfind
("abc",1
,2)——從 位置1 處,開始向前查詢 'abc' 的前 2個 字元
str.
find_first_of
("abbc"
)——查詢 "abbc" 和str 相等的任何字元,
"abbc" 中有就返回位置
str.
find_first_of
("abbc",1
)——查詢 "abbc" 和str 相等的任何字元,
從 位置1 處,開始查詢"abbc" 中的字元,"abbc" 中有的就返回位置
str.
find_first_of
("abbc",1
,2)——查詢 "abbc" 和str 相等的任何字元,
從 位置1 處,開始查詢"abbc" 的前 2個 字元,"abbc" 中有的就返回位置
str.
find_last_of
("abbc"
)——查詢 "abbc" 和str 相等的任何字元,
向前查詢,"abbc" 中有的返回位置
str.
find_last_of
("abbc",1
)——查詢 "abbc" 和str 相等的任何字元,從
位置1 處,開始向前查詢"abbc" 中的字元,"abbc" 中有的就返回位置
str.
find_last_of
("abbc",10
,2)——查詢 "abbc" 和str 相等的任何字元,
從 位置10 處,開始向前查詢"abbc" 的前 2個 字元,"abbc" 中有的就返回位置
str1=str.
substr(2
)——提取子串,提取出 str 的 下標為2 到末尾,給 str1
str1=str.
substr(2
,3)——提取子串,提取出 str 的 下標為2 開始,
提取三個位元組,給 str1
const
char
* s1=str.
data
()——將string類轉為字串陣列,
返回給s1
char
* s=
newchar[10
] str.
copy
(s,count,pos)——將 str 裡的 pos 位置開始,拷貝 count個 字元,
存到 s 裡
示例物件:string str
(「abcd」)
str.
compare
(「abcd」)——完全相等,返回0
str.
compare
(「dcba」)——返回乙個小於0的值
str.
compare
(「ab」)——返回大於0的值
str.
compare
(str)——相等
str.
compare(0
,2,str,2,
2)——用str的 下標0 開始的 2個字元 和 str的 下標2 開始的
2個 字元比較——就是用 "ab" 和 "cd」" 比較,結果小於零
str.
compare(1
,2,」bcx」,
2)——用str的 下標1 開始的 2個字元 和 "bcx"的 前 2個
字元比較——就是用 "bc" 和 "bc」" 比較,結果是零
C STL之vector用法總結
vector是表示可變大小陣列的序列容器。就像陣列一樣,vector也採用的連續儲存空間來儲存元素。也就是意味著可以採用下標對vector的元素進行訪問,和陣列一樣高效。但是又不像陣列,它的大小是可以動態改變的,而且它的大小會被容器自動處理。本質講,vector使用動態分配陣列來儲存它的元素。當新元...
C STL之vector用法總結
vector是表示可變大小陣列的序列容器。就像陣列一樣,vector也採用的連續儲存空間來儲存元素。也就是意味著可以採用下標對vector的元素進行訪問,和陣列一樣高效。但是又不像陣列,它的大小是可以動態改變的,而且它的大小會被容器自動處理。本質講,vector使用動態分配陣列來儲存它的元素。當新元...
C STL之vector用法總結
vector是表示可變大小陣列的序列容器。就像陣列一樣,vector也採用的連續儲存空間來儲存元素。也就是意味著可以採用下標對vector的元素進行訪問,和陣列一樣高效。但是又不像陣列,它的大小是可以動態改變的,而且它的大小會被容器自動處理。本質講,vector使用動態分配陣列來儲存它的元素。當新元...