末尾を削除・表示するコードを書き、ビルド・実行し、末尾データが削除されたことを確認しなさい。途中の文字を削除・表示し、本当に削除されたことを確認しなさい。それらにより文字列クラスを使うことができるはずだ。実は文字列クラスには上記以外にも便利な機能がメンバ関数としていくつも用意されている。文字列が空かどうかをチェックしたり、文字数を調べたり、文字列置換することもできる。これらは通常文字列に対する明らかなアドバンテージである。empty()」は文字列が空かどうかを判定する関数。方が高速な場合がある。使うことが推奨されている。length()」は、文字数を返す関数。これらは同じものである。互換性のために「size()」があるのだと推測される。サイズを表す型で、符号なし整数の組み込み型である。capacity()」は、文字列が確保しているメモリに入る文字数、すなわち現在のデータ領域容量を返す関数。実際の文字数より若干大目にメモリを確保している。ポインタ「front()」は先頭文字を返す関数。「文字列名[0]」と記述するのと同等。「back()」は末尾文字を返す関数。1]」と記述するのと同等。タイプ数が大幅に減るし、分かりやすいので存在価値が高いぞ。表示される「substr(位置、サイズ)」は、文字列を切り出すメンバ関数。"\n";「c_str()」、「data()」は文字列データ先頭アドレスを返す関数。「&文字列名[0]」と記述するのと同等。導入当初、数値との相互変換など機能が不足していた。文字列関数を呼ぶことで、その欠点を補ってきたというわけだ。通常文字列と同じようにデータ領域が連続したアドレスだということが保証されている。文字列アドレスを他の関数に渡して処理することも可能だ。空にする「clear()」は文字列を空にする関数。サイズを0にするだけ。メモリが解放されるわけではない。イディオムを使用する。sz)」は文字数を指定サイズに設定する関数。現在のキャパシティを超えていれば、メモリがアロケートされ,文字列がコピーされる。文字)」と、第2引数で文字を指定する。サイズが減っても、その分のメモリが解放されるわけではない。イディオムを使用する。sz)」はキャパシティを指定する関数。文字列を大量に追加する場合、メモリのアロケートと文字列コピーが多く呼ばれる場合がある。メモリを確保する方がパフォーマンス的に好ましい。str.push_back(i);「swap(文字列名)」は引数で指定されたオブジェクトと内容を入れ替える関数。行ってもメモリは解放されないので、C++11以前では以下のようなコードが使用されていた。追加された関数で、キャパシティを現在のサイズの値にし、余分なメモリを解放する関数。なかったので以下のようなイディオムが使用されていた。コールし、それぞれの値を表示するコードを書きなさい。コールし、それぞれの値を表示するコードを書きなさい。コールし、それぞれの値を表示するコードを書きなさい。コールし、返されたアドレスの内容を確認しなさい。型の整数値に変換するコードを書きなさい。値を表示するコードを書きなさい。capacity()、文字列を表示するコードを書きなさい。capacity()、文字列を表示するコードを書きなさい。capacity()、文字列を表示するコードを書きなさい。capacity()、文字列を表示するコードを書きなさい。capacity()、文字列を表示するコードを書きなさい。capacity()、文字列を表示するコードを書きなさい。実行し、それぞれの内容を表示するコードを書きなさい。開始位置を省略した場合は、先頭から検索する。上記以外にもいくつかのコール方法がある。