簡體   English   中英

我在哪里可以獲得C ++中的示例代碼,為我自己的容器創建迭代器?

[英]Where do I get sample code in C++ creating iterator for my own container?

我一直在尋找為我自己的容器創建迭代器的示例代碼,但我還沒有找到一個很好的例子。 我知道之前曾經問過這個問題( 創建我自己的迭代器 )但是沒有看到任何令人滿意的答案。

我正在尋找簡單的示例代碼來開始如何設計我自己的迭代器。

謝謝

在這里,您可以找到創建自定義迭代器的好介紹。 另請查看Boost.Iterator庫。

我發現馬修威爾遜的“擴展STL”在這個問題上非常有教育意義。 包含許多做什么和不該做的事,以及大量實用的編程技巧。 我覺得這個家伙真的知道他在做什么。 (也為此創建了庫)

Nicolai Josuttis在他的書中有一個用戶定義迭代器的例子:C ++標准庫,一個教程和一個參考。

以下是在線示例:

http://www.josuttis.com/libbook/iter/assoiter.hpp http://www.josuttis.com/libbook/iter/assoiter.cpp

看一下本文,它描述了如何為類實現自定義虛擬迭代器: 文章

它有一個顯着的優點 - 你可以創建一個抽象的基礎迭代器類,並為你自己的容器和一些STL容器使用一些自定義迭代器繼承它。 因此,您將能夠動態使用迭代器 - 您的函數將使用指向抽象迭代器類的指針,而其他代碼將能夠選擇應使用的容器。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM