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

std::array::cend

#include <array>

const_iterator cend() const noexcept;

Trả về một iterator hằng (constant iterator) trỏ đến vị trí ngay sau phần tử cuối cùng trong mảng.

Tham số

Không có tham số

Giá trị trả về

  • Trả về một constant iterator (kiểu const_iterator), trỏ tới vị trí sau phần tử cuối cùng trong mảng.
  • Không thể dereference iterator trả về từ cend() vì nó nằm ngoài phạm vi hợp lệ của mảng.
  • Trong trường hợp mảng rỗng, cend() trả về cùng vị trí với cbegin().

Đặc điểm

  1. Iterator trả về không thể được sử dụng để thay đổi giá trị của mảng.
  2. Dùng để duyệt mảng một cách an toàn trong các ngữ cảnh không cho phép thay đổi dữ liệu.
  3. Tương thích với các thuật toán của thư viện <algorithm> cần const iterators.
  4. Iterator trả về bởi cend() không thể sửa đổi phần tử mảng, ngay cả khi mảng không được khai báo là const.

Ví dụ

#include <array>
#include <iostream>

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

for (auto it = myArray.cbegin(); it != myArray.cend(); ++it) {
std::cout << *it << " ";
}
return 0;
}

Các hàm liên quan

endTrả về một iterator trỏ đến vị trí ngay sau phần tử cuối cùng của std::array
backTruy xuất phần tử tại vị trí cuối cùng
cbeginTrả về một iterator hằng trỏ tới phần tử đầu tiên của std::array
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
crendTrả về một iterator ngược hằng trỏ tới phần tử trước phần tử đầu tiên của std::array