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

std::queue::pop

#include <queue>

Xóa phần tử ở đầu của std::queue (phần tử được thêm vào đầu tiên).

void pop();

Tham số

Không có tham số

Giá trị trả về

Không có giá trị trả về

Đặc điểm

  1. Xóa phần tử ở đầu: pop() luôn xóa phần tử ở đầu std::queue (phần tử được thêm vào đầu tiên - FIFO).
  2. Giảm kích thước: pop() làm giảm kích thước của std::queue đi 1.
  3. Hành vi không xác định khi queue rỗng: Gọi pop() trên một std::queue rỗng sẽ dẫn đến hành vi không xác định (undefined behavior). Bạn nên kiểm tra empty() trước khi gọi pop().
  4. Dựa trên underlying container: pop() của std::queue thực chất gọi hàm pop_front() của underlying container (ví dụ: std::deque mặc định).
  5. Không ném ngoại lệ: pop() không ném ra bất kỳ ngoại lệ nào (trừ khi destructor của phần tử bị xóa ném ngoại lệ, nhưng trường hợp này rất hiếm).
  6. Không trả về giá trị phần tử bị xóa: pop() không trả về giá trị của phần tử bị xóa. Nếu bạn cần giá trị đó, hãy truy cập bằng front() trước khi xóa.
  7. Độ phức tạp: Độ phức tạp của pop()O(1) - thời gian hằng số.

Ví dụ

#include <iostream>
#include <queue>

int main() {
std::queue<int> myqueue;

myqueue.push(10);
myqueue.push(20);
myqueue.push(30);

std::cout << "Front element before pop: " << myqueue.front() << '\n'; // Output: Front element before pop: 10

myqueue.pop(); // Xóa phần tử ở đầu (10)

std::cout << "Front element after pop: " << myqueue.front() << '\n'; // Output: Front element after pop: 20

return 0;
}

Các hàm liên quan

pushThêm một phần tử mới vào cuối std::queue
emptyKiểm tra xem std::queue có rỗng hay không