std::basic_string<CharT,Traits,Allocator>::clear
提供: cppreference.com
<tbody>
</tbody>
<tbody class="t-dcl-rev ">
</tbody><tbody>
</tbody>
void clear(); |
(C++11未満) | |
void clear() noexcept; |
(C++11以上) (C++20未満) |
|
constexpr void clear() noexcept; |
(C++20以上) | |
erase(begin(), end()) を実行したかのように、文字列からすべての文字を削除します。
すべてのポインタ、参照、イテレータは無効化されます。
引数
(なし)
戻り値
(なし)
ノート
std::vector::clear と異なり、 C++ 標準はこの関数によって capacity が変更されないことを明示的に要求していませんが、既存の実装は capacity を変更しません。 これは確保されているメモリは解放されないという意味です (shrink_to_fit も参照してください)。
計算量
文字列のサイズに比例。 しかし既存の実装は定数時間で処理します。
例
Run this code
#include <cassert>
#include <string>
int main()
{
std::string s{ "Exemplar" };
std::string::size_type const capacity = s.capacity();
s.clear();
assert(s.capacity() == capacity);
assert(s.empty());
assert(s.size() == 0);
}
関連項目
| 文字を削除します (パブリックメンバ関数) |