On Apr 13, 10:13 pm, JDT <jdt_yo...@yahoo.com> wrote:
I am curious if there is a way to just use existing STL functions,
algorithms etc to accomplish the following loop (without a need to write
my own function). I know how to use some STL functions plus my own
function to replace the loop. But that unnecessarily makes code more
complicated. Any advice is much welcome. Thanks.
int nSize;
...
vector<int> v;
v.resize(nSize);
for (int i=0; i<nSize; i++)
v[i] = i;
You need a special iterator; check out boost::iterators. With
the correct iterator, it's just:
vector<int> v( boost::counting_iterator< int >( 0 ),
boost::counting_iterator< int >( nSize ) ) ;
--
James Kanze (Gabi Software) email: james.kanze@gmail.com
Conseils en informatique orient?e objet/
Beratung in objektorientierter Datenverarbeitung
9 place S?mard, 78210 St.-Cyr-l'?cole, France, +33 (0)1 30 23 00 34
from the Internet but the compiling process failed. For example, the
compiler complained the following file is not found. Your further help
is appreciated.