for each

うっそぉ〜ん!より、

#include <iostream>
#include <list>
#include <string>

int main() {
  std::list<std::string> sl;
  sl.push_back("1st");
  sl.push_back("2nd");
  sl.push_back("3rd");
  sl.push_back("4th");
  for each ( std::string item in sl ) { // Ω ΩΩ < な、なんだってー
    std::cout << item << std::endl;
  }
}

VCってこんなことできるのか。知らなかった。
C++0xで書くとこんな感じかな。

#include <iostream>
#include <list>
#include <string>

int main() {
  std::list<std::string> sl;

  sl.push_back("1st");
  sl.push_back("2nd");
  sl.push_back("3rd");
  sl.push_back("4th");
  for( std::string item : sl ) {
    std::cout << item << std::endl;
  }
}

ConceptGCCコンパイルが通ることを確認(Initializer listsとautoも使いたいが、まだ実装されてねぇ)。