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

std::array::cbegin

#include <array>

const_iterator cbegin() const noexcept;

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

Tham số

Không có tham số

Giá trị trả về

  • Trả về một const_iterator trỏ đến phần tử đầu tiên của mảng.
  • Nếu mảng rỗng, giá trị trả về bằng giá trị của cend() (iterator tới sau phần tử cuối cùng).

Đặc điểm

  1. Hạn chế: cbegin() đảm bảo rằng iterator không thể được sử dụng để thay đổi giá trị của các phần tử trong container.
  2. Sử dụng cbegin() thay vì begin() khi bạn muốn đảm bảo rằng không có thay đổi nào xảy ra với các phần tử của mảng thông qua iterator.
  3. cbegin() hữu ích trong các ngữ cảnh yêu cầu tính bất biến (const-correctness), chẳng hạn trong các hàm nhận container làm đối số const.

Ví dụ

#include <array>
#include <iostream>

int main() {
// Khởi tạo mảng
std::array<int, 5> myArray = {10, 20, 30, 40, 50};

// Lấy iterator không thể thay đổi
auto it = myArray.cbegin();

// Lặp qua mảng và in ra các phần tử
for (; it != myArray.cend(); ++it) {
std::cout << *it << " "; // In giá trị của phần tử
}

// Kết quả: 10 20 30 40 50
return 0;
}

Các hàm liên quan

beginTrả về một iterator trỏ đến phần tử đầu tiên của std::array
frontTruy xuất phần tử tại vị trí đầu tiên
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
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