C++11 中范围的文字

Literal for ranges in C++11

如果我有这个:

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

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

我知道容器需要 beginend 方法才能工作。但是如果我们有文字最大值呢?

没有内置的机制来执行此操作:基于范围的 for 适用于可以调用 beginend 的内容。

我写了一篇关于如何做到这一点的博客 post:https://www.justsoftwaresolutions.co.uk/cplusplus/generating_sequences.html

基本上,您需要创建一个 "virtual container" 带有更新计数的迭代器。