std::basic_string<CharT,Traits,Allocator>::clear

出自cppreference.com
< cpp‎ | string‎ | basic string
在2018年2月9日 (五) 19:17由Fruderica對話 | 貢獻所做的修訂版本

 
 
 
std::basic_string
 
void clear();

如同通過執行 erase(begin(), end()) 從 string 移除所有字符。

非法化所有指針、引用及迭代器。

目錄

參數

(無)

返回值

(無)

注意

不同於 std::vector::clear , C++ 標準不顯式要求此函數不更改 capacity ,但既存實現都不更改容量。這意味着它們不釋放分配的內存(參閱 shrink_to_fit )。

異常

(無)

(C++11 前)
noexcept 規定:  
noexcept
  
(C++11 起)

複雜度

未指定。絕大多數實現在常數時間內操作,實際上不調用 erase(begin(), end())

示例

#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);
}

參閱

移除字符
(公開成員函數) [編輯]