How do I iterate safely and efficiently with std::forward_list?

Iterating safely and efficiently with std::forward_list in C++ can be done using the provided iterators. The std::forward_list is a singly linked list that allows for efficient insertions and deletions, but it requires careful iteration due to its structure. Below is an example demonstrating how to iterate over a std::forward_list while ensuring safe operations.

#include <iostream> #include <forward_list> int main() { std::forward_list<int> flist = {1, 2, 3, 4, 5}; for (auto it = flist.begin(); it != flist.end(); ) { std::cout << *it << " "; ++it; // Move to the next element safely } return 0; }

std::forward_list C++ iterator linked list iteration efficient iteration