empty
Материал из cppreference.com
Синтаксис:
#include <map> bool empty() const;
Функция empty() возвращает истину если карта не содержит элементов, иначе - ложь.
Например, следующий код использует функцию empty() как условие остановки в цикле while, в котором в алфавитном порядке выводится содержимое карты, а сама карта очищается.
struct strCmp { bool operator()( const char* s1, const char* s2 ) const { return strcmp( s1, s2 ) < 0; } }; ... map<const char*, int, strCmp> ages; ages["Homer"] = 38; ages["Marge"] = 37; ages["Lisa"] = 8; ages["Maggie"] = 1; ages["Bart"] = 11; while( !ages.empty() ) { cout << "Erasing: " << (*ages.begin()).first << ", " << (*ages.begin()).second << endl; ages.erase( ages.begin() ); }
Вывод программы после запуска:
Erasing: Bart, 11
Erasing: Homer, 38
Erasing: Lisa, 8
Erasing: Maggie, 1
Erasing: Marge, 37