hash_multiset::erase (STL/CLR)
Удаляет элементы в указанных положениях.
iterator erase(iterator where);
iterator erase(iterator first, iterator last);
bool erase(key_type key)
Параметры
first
Начало диапазона, чтобы привести к удалению.key
Значение ключа, чтобы привести к удалению.last
Элемент диапазона, чтобы привести к удалению., где
Элемент, который необходимо привести к удалению.
Заметки
Первый функцию-член удаляет элемент контролируемой последовательности, указанное в where и возвращает первый элемент указывает итератор, оставшиеся за удаленным элементом, или hash_multiset::end (STL/CLR)(), если такой элемент не существует. Он используется для удаления одного элемента.
Второй функцию-член удаляет элементы контролируемой последовательности в диапазоне [first, last) и возвращает первый элемент указывает итератор, оставшиеся за всеми удаленными элементами, или end(), если такой элемент не существует. Он используется для удаления ноль или более соседние элементы.
Третий функцию-член удаляет любой элемент контролируемой последовательности ключ которой имеет соответствующий заказ на key и возвращается число удаленных элементов. Он используется для удаления и подсчитать все элементы, соответствующие указанному ключу.
Каждое erase элемента имеет время пропорциональное в логарифму числа элементов в контролируемой последовательности.
Пример
// cliext_hash_multiset_erase.cpp
// compile with: /clr
#include <cliext/hash_set>
typedef cliext::hash_multiset<wchar_t> Myhash_multiset;
int main()
{
Myhash_multiset c1;
c1.insert(L'a');
c1.insert(L'b');
c1.insert(L'c');
// display initial contents " a b c"
for each (wchar_t elem in c1)
System::Console::Write(" {0}", elem);
System::Console::WriteLine();
// erase an element and reinspect
System::Console::WriteLine("erase(begin()) = {0}",
*c1.erase(c1.begin()));
// add elements and display " b c d e"
c1.insert(L'd');
c1.insert(L'e');
for each (wchar_t elem in c1)
System::Console::Write(" {0}", elem);
System::Console::WriteLine();
// erase all but end
Myhash_multiset::iterator it = c1.end();
System::Console::WriteLine("erase(begin(), end()-1) = {0}",
*c1.erase(c1.begin(), --it));
System::Console::WriteLine("size() = {0}", c1.size());
return (0);
}
Требования
Заголовок:<cliext/hash_set>
Пространство имен: cliext