Why not have loops with greater semantic meaning?
• for( vector<int>::iterator i = v.begin(); i != v.end();
++i ) {
… do something with *i …
}
• for( int i = 0; i < v.size(); ++i ) {
… do something with v[i] …
}
• for each( int vi in v ) { // C++/CLI syntax
… do something with vi …
}
• for( int vi : v ) { // more likely C++0x syntax
… do something with vi …
}
Commonality:
•Already in C++/CLI,
likely to be in ISO C++0x.
•Directly leveraged in
Concur. The language can
better extend this clearer declaration of intent for new parallelizable loops.