Chuyển tới nội dung chính

std::set::empty

#include <set>

bool empty() const noexcept;

Kiểm tra xem std::set 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ề

  • Trả về true nếu std::set rỗng (không có phần tử nào), false nếu std::set không rỗng (có ít nhất một phần tử).

Đặc điểm

  1. Kiểm tra set rỗng: empty() là cách thức chính xác và hiệu quả để kiểm tra xem std::set có chứa phần tử nào hay không.
  2. 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.
  3. const: empty() là một hàm const, nghĩa là nó không thay đổi trạng thái của std::set.
  4. Liên quan đến begin()end(): Một std::set rỗng khi begin()end() (hoặc cbegin()cend(), hoặc rbegin()rend(), hoặc crbegin()crend()) trả về cùng một giá trị.
  5. Độ phức tạp: O(1) - thời gian hằng số.

Ví dụ

#include <iostream>
#include <set>

int main() {
std::set<int> set1;
std::set<int> set2 = {1, 2, 3};

if (set1.empty()) {
std::cout << "set1 is empty\n"; // Output: set1 is empty
}

if (!set2.empty()) {
std::cout << "set2 is not empty\n"; // Output: set2 is not empty
}

// Kiểm tra trước khi lấy phần tử đầu tiên
if (!set2.empty()) {
std::cout << "First element: " << *set2.begin() << std::endl;
}

return 0;
}

Các hàm liên quan

clearXóa tất cả các phần tử khỏi std::set
eraseXóa một hoặc nhiều phần tử khỏi std::set
sizeTrả về số lượng phần tử hiện có trong std::set