12-1 為什麼需要 Iterator?

在學 STL 之前,我們通常用「下標」存取陣列:

int a[] = {3, 1, 4, 1, 5};
for (int i = 0; i < 5; i++)
{
    cout << a[i] << " ";
}

容器種類很多(vector、list、set、map……),它們的內部結構不同。傳統的作法是針對不同的容器撰寫其存取元素的成員函數。但是這樣一來,每種容器都有自己的介面,對於寫程式的人來說是個很大的困擾。

Iterator(迭代器) 就是一個「統一的指標」,讓你用相同的寫法走訪不同的容器


Revision #2
Created 14 June 2026 23:55:19 by huihui
Updated 15 June 2026 00:04:13 by huihui