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

In C++, iterating over a `std::deque` can be done in a variety of ways. Here, we discuss safe and efficient methods to loop through a `std::deque`, along with code examples. Understanding how to iterate through `std::deque` effectively is crucial for optimal data manipulation.

Keywords: C++, std::deque, iteration, safe, efficient, programming, data structures
Description: Learn how to safely and efficiently iterate through a std::deque in C++. This guide provides examples and best practices for working with this versatile data structure.

#include 
#include 

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

    // Safe iteration using range-based for loop
    for (const auto& num : numbers) {
        std::cout << num << " ";
    }
    std::cout << std::endl;

    // Efficient iteration using indices
    for (size_t i = 0; i < numbers.size(); ++i) {
        std::cout << numbers[i] << " ";
    }
    std::cout << std::endl;

    // Iterating using iterators
    for (auto it = numbers.begin(); it != numbers.end(); ++it) {
        std::cout << *it << " ";
    }
    std::cout << std::endl;

    return 0;
}
    

Keywords: C++ std::deque iteration safe efficient programming data structures