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

std::vector::rend

#include <vector>

      reverse_iterator rend() noexcept;
const_reverse_iterator rend() const noexcept;

Trả về một iterator ngược trỏ tới phần tử trước phần tử đầu tiên của vector.

Tham số

Không có tham số

Giá trị trả về

  • rend() trả về một reverse iterator trỏ đến vị trí trước phần tử đầu tiên của vector. Reverse iterator cho phép duyệt qua các phần tử của vector từ cuối lên đầu.

Đặc điểm

  1. rend() đánh dấu điểm kết thúc (end) khi duyệt ngược vector, vì vậy khi duyệt từ rbegin() đến rend(), sẽ bao gồm tất cả phần tử từ cuối lên đến đầu.
  2. rend() chỉ cung cấp iterator để truy cập dữ liệu và không thực hiện thay đổi nào với các phần tử của vector.
  3. Thường kết hợp với rbegin() để duyệt ngược vector, bắt đầu từ rbegin() và kết thúc tại rend().
  4. Một số compiler yêu cầu thư viện <iterator> để sử dụng reverse iterator.

Ví dụ

#include <iostream>
#include <vector>

int main() {
std::vector<int> vec = {1, 2, 3, 4, 5};

// Duyệt qua vector từ cuối về đầu
for (auto it = vec.rbegin(); it != vec.rend(); ++it) {
std::cout << *it << " ";
}

return 0;
}

Các hàm liên quan

rbeginTrả về một iterator ngược (reverse iterator) trỏ tới phần tử cuối cùng của vector
frontTruy xuất phần tử tại vị trí đầu tiên
beginTrả về một iterator trỏ đến phần tử đầu tiên của vector
endTrả về một iterator trỏ đến vị trí ngay sau phần tử cuối cùng của vector