2017-03-20 47 views
2

範圍。如果我有這樣的:文字在C++ 11

for (auto iSong = 1; iSong <= iMaxSongNumber; iSong++) 

我可以使用新的for range的方法呢?

據我所知,對於集裝箱,他們需要一個beginend方法讓他們工作。但是,如果我們有文字最大值?

+1

範圍不是C++ 11的本地範圍,但有些庫可以創建它們(並且可以用於例如範圍爲'for'循環)。 –

+1

也許試試吧包括;) –

+0

@KubaWyrostek什麼是** texas.h **? –

回答

1

沒有內置機制來執行此操作:基於範圍的for適用於可調用beginend的東西。

我寫了一篇博客文章如何做到這一點:https://www.justsoftwaresolutions.co.uk/cplusplus/generating_sequences.html

基本上,你需要創建一個「虛擬容器」與迭代器更新計數。

+0

感謝您提供的信息。我認爲這不值得爲我的需求付出努力。如果有什麼開箱即用的......另外,在我的例子中,我還需要1個索引,而不是0個索引。不過謝謝你。我會接受這個答案。 –

+0

鏈接到博客文章的最終代碼允許基於1的索引。 https://www.justsoftwaresolutions.co.uk/files/numeric_range.cpp –