2
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.
For Each