std::unordered_map::empty
#include <unordered_map>
bool empty() const noexcept;
Kiểm tra xem std::unordered_map có rỗng hay không, tức là không chứa bất kỳ phần tử nào.
Tham số
Không có tham số
Giá trị trả về
bool
- Trả về true nếu std::unordered_map rỗng (không có phần tử nào), false nếu std::unordered_map không rỗng (có ít nhất một phần tử).
Đặc điểm
- Kiểm tra map rỗng:
empty()
là cách thức chính xác và hiệu quả để kiểm tra xem std::unordered_map có chứa phần tử nào hay không. - noexcept:
empty()
được đánh dấu lànoexcept
, nghĩa là nó được đảm bảo không ném ra ngoại lệ nào. - const:
empty()
là một hàmconst
, nghĩa là nó không thay đổi trạng thái của std::unordered_map. - Liên quan đến
begin()
vàend()
: Một std::unordered_map rỗng khibegin()
vàend()
(hoặccbegin()
vàcend()
) trả về cùng một giá trị. - Độ phức tạp:
O(1)
- thời gian hằng số.
Ví dụ
#include <iostream>
#include <unordered_map>
int main() {
std::unordered_map<int, int> umap1;
std::unordered_map<int, int> umap2;
umap2[1] = 2;
umap2[3] = 4;
if (umap1.empty()) {
std::cout << "umap1 is empty\n"; // Output: umap1 is empty
}
if (!umap2.empty()) {
std::cout << "umap2 is not empty\n"; // Output: umap2 is not empty
}
// Kiểm tra trước khi thao tác
if (!umap2.empty()) {
std::cout << "First element: " << umap2.begin()->first << std::endl;
}
return 0;
}
Các hàm liên quan
clear | Xóa tất cả các phần tử khỏi std::unordered_map |
erase | Xóa một hoặc nhiều phần tử khỏi std::unordered_map |