全要素のデストラクタを呼び、サイズを 0 にします。
template <typename T> class myvector { ... /** * @brief Erases all elements from the container. After this call, size() * returns zero. */ void clear(void) { for (size_type i = 0; i < size_; i++) { heap_[i].~value_type(); } size_ = 0; } ... };clear() では capacty_ は変化しないのが、大きな特徴です。
全ソースコード: https://github.com/suomesta/myvector/tree/master/025
0 件のコメント:
コメントを投稿