Computer >> Máy Tính >  >> Lập trình >> C ++

danh sách chuyển tiếp ::cend () trong C ++ STL

Given là nhiệm vụ hiển thị hoạt động của các hàm forward_list ::cend trong C ++.

Danh sách chuyển tiếp chỉ giữ liên kết với phần tử tiếp theo không giống như danh sách bình thường giữ liên kết với phần tử tiếp theo cũng như trước đó, giúp lặp lại theo cả hai hướng. Nhưng forward_list chỉ có thể lặp lại theo hướng phía trước.

Hàm forward_list ::cend () là một phần của thư viện mẫu chuẩn C ++. Nó được sử dụng để lấy phần tử cuối cùng của danh sách.

Tệp tiêu đề nên được bao gồm để gọi hàm này.

Cú pháp

Forward_List_Name.cend();

Tham số

Hàm không chấp nhận bất kỳ tham số nào.

Giá trị trả lại

Hàm trả về một trình lặp không đổi trỏ đến phần tử cuối cùng của forward_list.

Ví dụ

Input: forward_list<int> Lt={8, 9, 7};
cout<< *Lt.cend();
Output: 7

Giải thích: Ở đây chúng tôi tạo một danh sách với các phần tử 8,9 và 7. Sau đó, chúng tôi gọi hàm cend () trỏ đến phần tử cuối cùng của danh sách. Vì vậy, khi chúng tôi in nó, đầu ra được tạo ra là 7, là phần tử cuối cùng của danh sách.

Phương pháp tiếp cận được sử dụng trong chương trình dưới đây như sau -

  • Đầu tiên, hãy tạo một forward_list, chúng ta hãy nói "Lt" thuộc loại int và gán một số giá trị cho nó.
  • Vòng lặp bắt đầu For để in danh sách.
  • Sau đó, tạo một đối tượng “itr” kiểu auto bên trong vòng lặp for để nhận các giá trị trả về của các hàm cend () và cbegin (). Khởi tạo “itr” bằng cách đặt nó là phần tử đầu tiên của danh sách bằng hàm cbegin ().
  • Sau đó chỉ định điều kiện kết thúc của vòng lặp for bằng cách viết “itr” không bằng phần tử cuối cùng của danh sách bằng cách sử dụng hàm cend ().
  • In * itr.

Thuật toán

Start
Step 1->In function main()
   Initialize forward_list<int> Lt={}
   Loop For auto itr = Lt.cbegin() and itr != Lt.cend() and itr++
   Print *itr
   End
Stop

Ví dụ

#include<iostream>
#include<list>
using namespace std;
int main() {
   forward_list<int> Lt = { 9,55,6,100 };
   //Printing the elements of the list
   cout <<"The elements of the list are : " <<"\n";
   for (auto itr = Lt.cbegin(); itr != Lt.cend(); itr++)
   cout << *itr << " ";
   return 0;
}

Đầu ra

Nếu chúng ta chạy đoạn mã trên, nó sẽ tạo ra kết quả sau -

9 55 6 100