std::basic_string<CharT,Traits,Allocator>::clear
出自cppreference.com
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); }
參閱
移除字符 (公開成員函數) |