std::deque::begin
#include <deque>
Trả về một iterator trỏ đến phần tử đầu tiên của deque.
iterator begin() noexcept;
const_iterator begin() const noexcept;
Tham số
Không có tham số
Giá trị trả về
iterator begin()- Trả về một iterator trỏ đến phần tử đầu tiên của deque. Nếu deque là rỗng, iterator trả về sẽ trỏ đến vị trí
end().
- Trả về một iterator trỏ đến phần tử đầu tiên của deque. Nếu deque là rỗng, iterator trả về sẽ trỏ đến vị trí
const_iterator begin() const- Trả về một
const_iteratortrỏ đến phần tử đầu tiên, dùng khi đối tượng deque là hằng (const).
- Trả về một
Đặc điểm
- Hàm
begin()thường được sử dụng cùng với hàmend()để duyệt qua các phần tử của deque trong vòng lặp. - Nếu deque rỗng, iterator trả về từ
begin()sẽ bằng vớiend(). - Mặc dù hàm
begin()có thể xử lý deque rỗng bằng cách trả về một iterator bằng vớiend(), việc kiểm tra deque có rỗng hay không trước khi thao tác vẫn là một thực hành tốt. - Nên sử dụng
const_iteratornếu không cần thay đổi nội dung của deque.
Ví dụ
Duyệt qua các phần tử
#include <iostream>
#include <deque>
int main() {
std::deque<int> dq = {10, 20, 30, 40};
// Duyệt qua các phần tử bằng iterator
for (auto it = dq.begin(); it != dq.end(); ++it) {
std::cout << *it << " ";
}
return 0;
}
Sử dụng với const_iterator
#include <iostream>
#include <deque>
int main() {
const std::deque<int> dq = {5, 15, 25};
// Duyệt qua các phần tử bằng const_iterator
for (auto it = dq.begin(); it != dq.end(); ++it) {
std::cout << *it << " ";
}
return 0;
}
Kết hợp begin() với các thuật toán trong STL
#include <iostream>
#include <deque>
#include <algorithm> // std::reverse
int main() {
std::deque<int> dq = {1, 2, 3, 4};
// Đảo ngược các phần tử của deque
std::reverse(dq.begin(), dq.end());
for (const auto& elem : dq) {
std::cout << elem << " ";
}
return 0;
}
Các hàm liên quan
| front | Trả về tham chiếu đến phần tử đầu tiên trong deque |
| end | Trả về một iterator trỏ đến phần tử sau phần tử cuối cùng của deque |
| rbegin | Trả về một reverse iterator trỏ đến phần tử cuối cùng của deque |
| rend | Trả về một reverse iterator trỏ đến phần tử trước phần tử đầu tiên của deque |