2017-08-25 11 views
0

を提供して何を反復関数を記述するためにどのようにそれはイテレータを提供して何を反復することは非常に簡単です:Pythonではイテレータ

def iterate(iterable): 
    for i in iterable: 
     do_something(i) 

は、それはC++に似関数を記述することは可能ですか?

他の回答のようなものがお勧め:

template<class iterator_type> 
void iterate(iterator_type it, iterator_type end) 
{ 
    while (it != end) { 
     do_something(*(it++)); 
    } 
} 

をしかし直接イテレータで何かを取ることができ、反復子自体が開始および終了フェッチ方法はありますか?

結局のところ、質問は次のようになります。イテレータを提供するオブジェクトからイテレータを取得する標準的な方法はありますか?iter(...)、Pythonのように)

答えて

4

range forを使用すると、イテレータを持つコレクションを反復処理できます。

イテレータを提供するオブジェクトからイテレータを取得する標準的な方法はありますか?

はい、そのstd::begin(...)std::end(...)の機能です。

関連する問題