溫馨提示×

C++迭代器如何實(shí)現(xiàn)遍歷

c++
小樊
81
2024-11-08 19:46:22
欄目: 編程語言

在C++中,迭代器(Iterator)是一種用于遍歷容器(如數(shù)組、向量、列表等)中元素的指針。C++標(biāo)準(zhǔn)庫為各種容器提供了迭代器,使得遍歷容器變得簡單。以下是一個使用C++迭代器遍歷容器的示例:

#include <iostream>
#include <vector>

int main() {
    // 創(chuàng)建一個整數(shù)向量
    std::vector<int> numbers = {1, 2, 3, 4, 5};

    // 使用迭代器遍歷向量
    for (std::vector<int>::iterator it = numbers.begin(); it != numbers.end(); ++it) {
        std::cout << *it << " ";
    }

    return 0;
}

在這個示例中,我們首先包含了iostreamvector頭文件。然后,我們創(chuàng)建了一個名為numbers的整數(shù)向量,并初始化為{1, 2, 3, 4, 5}。接下來,我們使用begin()end()成員函數(shù)獲取向量的起始和結(jié)束迭代器。最后,我們使用一個for循環(huán)遍歷向量中的每個元素,并輸出它們的值。

需要注意的是,C++11及更高版本提供了基于范圍的for循環(huán)(Range-based for loop),使得遍歷容器更加簡潔。以下是使用基于范圍的for循環(huán)遍歷向量的示例:

#include <iostream>
#include <vector>

int main() {
    // 創(chuàng)建一個整數(shù)向量
    std::vector<int> numbers = {1, 2, 3, 4, 5};

    // 使用基于范圍的for循環(huán)遍歷向量
    for (const int& num : numbers) {
        std::cout << num << " ";
    }

    return 0;
}

在這個示例中,我們使用了基于范圍的for循環(huán)來遍歷向量中的每個元素。注意,這里使用了const int&來引用每個元素,以避免不必要的拷貝。

0