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

std::stack::empty

#include <stack>

bool empty() const;

Kiểm tra xem std::stack có rỗng hay không.

Tham số

Không có tham số

Giá trị trả về

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

Đặc điểm

  1. Kiểm tra stack rỗng: empty() là cách thức chính xác và hiệu quả để kiểm tra xem std::stack có chứa phần tử nào hay không.
  2. const: empty() là một hàm const, nghĩa là nó không thay đổi trạng thái của std::stack.
  3. Dựa trên underlying container: empty() của std::stack thực chất gọi hàm empty() của underlying container (ví dụ: std::deque mặc định).
  4. Không ném ngoại lệ: Hàm empty() được quy định không ném ra ngoại lệ.
  5. Độ phức tạp: O(1) - thời gian hằng số.

Ví dụ

#include <iostream>
#include <stack>

int main() {
std::stack<int> mystack;

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

mystack.push(10);

if (!mystack.empty()) {
std::cout << "mystack is not empty\n"; // Output: mystack is not empty
std::cout << "Top element: " << mystack.top() << '\n'; // Access top element only if not empty
}

return 0;
}

Các hàm liên quan

sizeTrả về số lượng phần tử hiện có trong std::stack