std::stack::pop
#include <stack>
void pop();
Xóa phần tử ở đỉnh của std::stack.
Tham số
Không có tham số
Giá trị trả về
Không có giá trị trả về
Đặc điểm
- Xóa phần tử ở đỉnh:
pop()
luôn xóa phần tử ở đỉnh std::stack. - Giảm kích thước:
pop()
làm giảm kích thước của std::stack đi 1. - Hành vi không xác định khi stack rỗng: Gọi
pop()
trên một std::stack rỗng sẽ dẫn đến hành vi không xác định (undefined behavior). Bạn nên kiểm traempty()
trước khi gọipop()
. - Dựa trên underlying container:
pop()
của std::stack thực chất gọi hàmpop_back()
(đối với std::deque, std::list) hoặcpop_back()
(đối với std::vector) của underlying container. - 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). - 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ằngtop()
trước khi xóa. - Độ phức tạp: Độ phức tạp của
pop()
làO(1)
- thời gian hằng số.
Ví dụ
#include <iostream>
#include <stack>
int main() {
std::stack<int> mystack;
mystack.push(10);
mystack.push(20);
mystack.push(30);
std::cout << "Top element before pop: " << mystack.top() << '\n'; // Output: Top element before pop: 30
mystack.pop(); // Xóa phần tử ở đỉnh (30)
std::cout << "Top element after pop: " << mystack.top() << '\n'; // Output: Top element after pop: 20
return 0;
}
Các hàm liên quan
push | Thêm một phần tử mới vào đỉnh của std::stack |
empty | Kiểm tra xem std::stack có rỗng hay không |