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

std::forward_list::front

#include <forward_list>

      reference front();
const_reference front() const;

Trả về tham chiếu đến phần tử đầu tiên trong forward_list.

Tham số

Không có tham số

Giá trị trả về

  • reference (phiên bản không const): Trả về một tham chiếu (có thể đọc và ghi) đến phần tử đầu tiên trong forward_list. Bạn có thể sử dụng tham chiếu này để thay đổi giá trị của phần tử.
  • const_reference (phiên bản const): Trả về một tham chiếu hằng (chỉ đọc) đến phần tử đầu tiên trong forward_list. Phiên bản này được sử dụng khi forward_list là một đối tượng const.

Đặc điểm

  1. Truy cập phần tử đầu tiên: front() cung cấp cách thức nhanh chóng và tiện lợi để truy cập phần tử đầu tiên của forward_list.
  2. Tham chiếu: front() trả về tham chiếu, cho phép bạn thay đổi trực tiếp giá trị của phần tử đầu tiên (trừ phiên bản const).
  3. Hai phiên bản: Phiên bản const được sử dụng cho các đối tượng forward_list const, đảm bảo tính an toàn về const.
  4. Hành vi không xác định khi danh sách rỗng: Gọi front() trên một forward_list rỗng sẽ dẫn đến hành vi không xác định (undefined behavior). Bạn nên kiểm tra empty() trước khi gọi front().
  5. Không làm thay đổi danh sách (ngoại trừ việc thay đổi giá trị phần tử đầu tiên thông qua tham chiếu trả về): Gọi front() không làm thay đổi cấu trúc hay kích thước của forward_list.
  6. Độ phức tạp: O(1) - thời gian hằng số.

Ví dụ

#include <iostream>
#include <forward_list>

int main() {
std::forward_list<int> mylist;

if (!mylist.empty()) {
std::cout << "First element: " << mylist.front() << '\n';
} else {
std::cout << "Cannot access front() of an empty forward_list!\n"; // Output: Cannot access front() of an empty forward_list!
}

return 0;
}

Các hàm liên quan

beginTrả về một iterator trỏ đến phần tử đầu tiên trong forward_list
before_beginTrả về một iterator trỏ đến vị trí trước phần tử đầu tiên trong forward_list