程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> c++0x 學習筆記之 range-based for loop wording

c++0x 學習筆記之 range-based for loop wording

編輯:C++入門知識

非常簡單,就是 for 循環的精簡寫法

1 2 3 int array[5] = { 1, 2, 3, 4, 5 }; for (int& x : array)     x *= 2;

對於容器同樣可用,比如與 auto 共用時

1 2 3 4 5 6 std::map<std::string, std::string> mm; for( auto i : mm ) {     if ( (*i).first.size() < 3 )         (*i).second.append("   "); }

可用的容器有
<array>, <deque>, <forward_list>, <list>, <map>, <pair>, <regex>, <set>, <string>, <tuple>, <unordered_map>, <unordered_set>,<valarray>,<vector>

for ( for-range-declaration : expression ) statement

等效於

12345678{   auto && __range = ( expression );   for (auto __begin = begin-expr, __end = end-expr; __begin != __end; ++__begin )   {     for-range-declaration = *__begin;     statement   } }

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved