株式会社エス・スリー・フォー

3.3 部分文字列

RWCSubString クラスは部分文字列の抽出と変更に対応しています。RWCSubString は、RWCString の様々なメンバ関数によって間接的に生成されており、最初の機会に破棄されます。そのため、公開コンストラクタはありません。

部分文字列は、いろいろな場合に使用できます。例えば、RWCString::operator() で部分文字列を作成し、それを用いて RWCString を初期化できます。

RWCString s("this is a string");
// 部分文字列から RWCString を生成する:
RWCString s2 = s(0, 4);                               // "this"

結果は、s の最初の 4 文字「this」をコピーした文字列 s2 になります。

また、文字列または RWCStringRWCSubString への代入で、RWSubString を左辺値 (lvalue) として 使うこともできます。

// RWCString を生成する
RWCString article("the");
RWCString s("this is a string");
s(0, 4) = "that";                           // "that is a string"
s(8, 1) = article;                        // "that is the string"

部分文字列への代入は、厳密な演算ではないことに注意してください。そのため、代入演算子の両辺の文字数が同じである必要はありません。