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

std::vector::cbegin

#include <vector>

const_iterator cbegin() const noexcept;

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

Tham số

Không có tham số

Giá trị trả về

  • cbegin() trả về một const iterator (iterator hằng), nghĩa là bạn có thể sử dụng iterator này để duyệt qua các phần tử của vector mà không thể thay đổi giá trị của chúng.

Đặc điểm

  1. cbegin() trỏ đến phần tử đầu tiên của vector, thích hợp để bắt đầu quá trình duyệt từ đầu đến cuối.
  2. cbegin() là một hàm hằng, nên có thể gọi cbegin() trên một vector hằng (const std::vector) mà không gây ra lỗi. Điều này giúp cbegin() phù hợp khi làm việc với các vector mà bạn chỉ muốn đọc dữ liệu.
  3. cbegin() có thể sử dụng với các thuật toán của thư viện chuẩn như std::find, std::count,... mà không làm thay đổi nội dung của vector, vì tất cả các thao tác được đảm bảo là đọc dữ liệu.
  4. cbegin() chỉ cung cấp khả năng duyệt qua vector mà không thay đổi kích thước hoặc nội dung của nó, đảm bảo tính toàn vẹn dữ liệu.
  5. cbegin() là lựa chọn tốt khi bạn chỉ muốn đọc dữ liệu và cần đảm bảo không làm thay đổi các giá trị trong quá trình duyệt.

Ví dụ

#include <iostream>
#include <vector>

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

// Duyệt vector từ đầu đến cuối bằng cbegin() và cend()
for (auto it = numbers.cbegin(); it != numbers.cend(); ++it) {
std::cout << *it << " ";
}

return 0;
}

Các hàm liên quan

beginTrả về một iterator trỏ đến phần tử đầu tiên của vector
cendTrả về một iterator hằng trỏ tới phần tử ngay sau phần tử cuối cùng của vector
crbeginTrả về một iterator ngược hằng (constant reverse iterator) trỏ tới phần tử cuối cùng của vector