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

std::array::crend

#include <array>

const_reverse_iterator crend() const noexcept;

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

Tham số

Không có tham số

Giá trị trả về

  • Hàm trả về một iterator kiểu const_reverse_iterator trỏ đến vị trí trước phần tử đầu tiên của mảng khi duyệt ngược.
  • Giá trị này không thể dereference được vì nó nằm ngoài phạm vi mảng.

Đặc điểm

  1. Trả về một iterator không thể thay đổi (constant iterator) trỏ đến vị trí trước phần tử đầu tiên khi duyệt mảng theo chiều ngược.
  2. Dùng để duyệt qua các phần tử của std::array từ cuối về đầu trong các thao tác chỉ đọc (read-only).
  3. crend() chỉ nên được dùng khi cần duyệt các phần tử trong mảng theo chiều ngược mà không thay đổi giá trị.
  4. Nếu cần thay đổi giá trị của các phần tử khi duyệt ngược, hãy sử dụng rend().

Ví dụ

#include <iostream>
#include <array>

int main() {
// Tạo một mảng std::array
std::array<int, 5> arr = {1, 2, 3, 4, 5};

// Duyệt ngược qua mảng sử dụng crend()
std::cout << "Duyệt mảng từ cuối về đầu (read-only):\n";
for (auto it = arr.crbegin(); it != arr.crend(); ++it) {
std::cout << *it << " ";
}

return 0;
}

Các hàm liên quan

rendTrả về một iterator ngược trỏ tới phần tử trước phần tử đầu tiên của std::array
frontTruy xuất phần tử tại vị trí đầu tiên
crbeginTrả về một iterator ngược hằng (constant reverse iterator) trỏ tới phần tử cuối cùng của std::array
cbeginTrả về một iterator hằng trỏ tới phần tử đầu tiên của std::array
cendTrả về một iterator hằng trỏ tới phần tử ngay sau phần tử cuối cùng của std::array