説明:Cスタイルの文字列あまりにも複雑、C ++ライブラリ定義する文字列クラスのヘッダファイル<文字列>(\ 0で終わります)。
*文字列とCスタイルの文字列の比較:
1.チャーは*、文字列がchar *をカプセル化し、文字列がクラスで、ポインタであります
2.文字列のchar *自動的に割り当てられたメモリを管理し、様々なクロスボーダーの発生を心配していないが、そのようなC文字列のような役割を果たします。
*文字列操作の一般的なコンテナ
1.コンストラクタ
1 列 STR; // 空の文字列を作成し 2 文字列 STR1(STR); // 既存のオブジェクトを使用して、新しいオブジェクトを作成する 3。 文字列(のconst のchar *秒); // 文字列の初期化 。4 文字列 STR2(INT N- 、チャー C); // の使用N初期化文字c
2.基本的な割り当て
1 列&演算子 =(CONST CHAR * S); // 文字列のこのタイプに割り当てられた文字列* 2 列&演算子(= CONST 文字列&S); // 現在の文字列は、文字列sを割り当てられている 3。 文字列&演算子 =(チャー C); // 現在の文字列に割り当てられた文字 4 文字列&割り当てる(CONST のchar * sで); // 現在の文字列は、文字列sが割り当てられる 。5 弦&割り当てる(CONST のchar * Sを、int型のn); //文字列sの最初のn文字が現在の文字列に割り当てられている 6。 文字列&(ASSIGN CONST 文字列&S); // 現在の文字列に割り当てられた文字列 7 列&ASSIGN(整数 nは、チャー C); // とC n文字現在の文字列に割り当てられている 。8 文字列&割り当てる(のconst 文字列&S、int型開始、int型のn); //はに割り当てられた文字列sのn文字の先頭から開始します
3.文字アクセス動作
1つの チャー&演算子 [](INT N-); // 文字で撮影した[]実施例 2 チャー&(AT INT N-); // での方法で文字を取得します
4.文字列スプライシング操作
1 列&演算子 + =(constの 文字列&STR); // オーバーロード演算子+ = 2 文字列&演算子 + =(CONST CHAR * STR); // オーバーロード演算子+ = 3 列&演算子 + =(CONST チャー C); // オーバーロード+ =演算子 4。 弦&アペンド(CONST のchar * S); // 文字列は、文字列sの電流端に接続されている 。5 弦&アペンド(CONST のchar * S、INT N-); / /文字列sは、ストリングの電流端に接続されているの最初のn文字 6。 文字列(&追記CONST 文字列&S); // 演算子と+ =() 。7 文字列&アペンド(CONST 文字列&S、int型の POS、INT N) 。8 / / 文字列sは、ストリングの電流端に接続されたn文字のPOSから出発して 9。 ストリング・アペンド(整数 nは、チャー C); // 現在の文字列の末尾に追加のn C
検索と置換5
1件の int型の検索(CONST 文字列&STR、INT POS = 0)のconst ; //は、最初の発生のSTR位置を見つけ、POSでの検索を開始 2 INTの検索(CONST のchar * S、INT POS = 0)のconst ; // 検索のPOSを見つけるために最初から最初の時間位置、 3。 int型の検索(のconst のchar * sの、int型のPOS、int型のn)のconst ; // 最初の位置の最初のn文字から位置posのSを探す 4。 int型の検索(のconst char型の C 、int型 POS = 0)のconst ; // 文字cが最初に現れる場所を見つける 5 int型の RFINDを(のconst 文字列&strの、int型 POS = NPO等)のconst ; // 最後の位置strを検索し、POSから探し始める 6 int型 RFIND(のconst char * sの、int型 POS = NPO等)constが ; // POSを見つけるために、最初から、s位置の最後に出現して下さい 7。 int型の RFIND(のconst のchar * sの、int型の POS、int型のn)のconst ; // 最初のn個からPOS Sを探します最後の文字位置 8 int型 RFIND(のconst char型 C、int型 POS = 0)のconst ; //は文字cが現れるの最後の位置を見つけ 9。 文字列と置換(int型の POS、int型 nは、constの 文字列&STR); // POSの先頭から交換してくださいn文字文字列STR 10 文字列&置き換え(int型の POS、int型 nは、constの char型 * S); //は文字列sの先頭からのpos n文字を置き換えます
動作6.比較
1 / * 比較関数が返す> 1、-1 <、辞書の参照配列と比較リターン== 0、大文字小文字を区別しない比較は、A大文字小さい先行する行は、小文字のAよりも小さいです* / 2 int型の比較(のconst 文字列&S)のconst ; // 比較文字列s 。3 int型の比較(のconst のchar * s)はconstの ; // 比較文字列s
7.ストリング
。1 文字列 SUBSTR(int型の POS = 0、int型のn = NPO等)のconst ; // POSからなる文字列の先頭からn文字を返します
8.挿入および削除操作
1 文字列(&INSERT INT POS、CONST のchar * S); // 挿入ストリングS 2 列&INSERT(INT POS、CONST 文字列&STR); // 挿入列STR 。3 文字列&INSERT(INT POS、INT N- 、チャー C); // 指定された場所にN C個のインサート文字 4 文字列&ERASE(INT POS、整数 N = NPOS); // 開始POSから削除n文字
Cスタイルの文字列変換9.string
1 // 文字列转のchar * 2 列 STR = " itcast " 。 3 のconst char型 * CSTR = str.c_str()。 4 // 文字*转列 5 のchar * S = " itcast " 。 6 文字列 strの(S)。
注:* C ++暗黙的型変換に文字列の存在下で、自動型変換は、CONSTチャーCスタイルをオブジェクトから文字列から存在していません。文字列型の列()関数は、c_strをC_STRINGによってオブジェクトに対応する文字列を返す。C_STRINGに変換する際、コンテンツがchar *に変換されなければならないまで、典型的には、プログラマは、プロセス全体の文字列クラスオブジェクトを守らなければなりません。