c++中的一些迴圈語法
for_each
for each (object var in collection_to_loop)
在vs中使用可以,其他平臺不確定。
for_each (InputIterator first, InputIterator last, Function fn)
在c++std名稱空間中,適用性廣。
first、last為迭代器,fn為"函式",上例子:
void myfunction (int i) { // function:
std::cout << ' ' << i;
}
struct myclass { // function object type:
void operator() (int i) {std::cout << ' ' << i;}
} myobject; //過載()運算子,因此能這樣:myobject(100),像函式一樣
int main () {
std::vector<int> myvector= {1, 2, 3};
for_each (myvector.begin(), myvector.end(), myfunction);
for_each (myvector.begin(), myvector.end(), myobject);
for_each (myvector.begin(), myvector.end(),
[](int i) {std::cout<<' '<<i;} //匿名函式
);
return 0;
}
上面3個一樣效果
for
上正體,對於stl容器,如vector<int> v,效率:
for(int i=0;i<v.size();i++) 這個最慢,好點的話新建個變數記住v.size()
for(vector<int>::iterator i=v.begin(); i!=v.end(); i++)迭代器迴圈,速度快
for(int i : v)跟上面實際差不多
相關文章
- C++中的迴圈結構C++
- C++之for迴圈、範圍for語句探究C++
- GaussDB SQL基礎語法示例-迴圈語句SQL
- JavaScript中更好的迴圈寫法大全JavaScript
- 6.4. PL/SQL語法——6.4.5. 迴圈語句SQL
- for 迴圈的一些細節
- C語言——迴圈結構(for迴圈,while迴圈,do-while迴圈)C語言While
- C#程式設計基礎第七課:C#中的基本迴圈語句:while迴圈、do-while迴圈、for迴圈、foreach迴圈的使用C#程式設計While
- 迴圈中的非同步&&迴圈中的閉包非同步
- Python的迴圈語句Python
- C語言-for迴圈之窮舉法練習C語言
- python 中的一些特殊語法Python
- Java for迴圈中語句執行的順序Java
- SqlServer中迴圈和條件語句SQLServer
- 用Java中for迴圈語句列印菱形Java
- Python 迴圈語句的使用Python
- python基礎語法迴圈巢狀和列表(一)Python巢狀
- python基礎語法迴圈巢狀和列表(二)Python巢狀
- Oracle儲存過程中跳出迴圈的寫法Oracle儲存過程
- JavaScript for 迴圈語句JavaScript
- Ruby迴圈語句
- TypeScript 迴圈語句TypeScript
- MySQL迴圈語句MySql
- C語言程式設計學習中while迴圈和do……while迴圈C語言程式設計While
- 前端 JavaScript 中的三種 for 迴圈語句總結前端JavaScript
- python04: while迴圈語句 break continue for in 迴圈PythonWhile
- c++類迴圈依賴的問題C++
- c++語法拾遺,一些細節與特性C++
- C++迴圈賽日程表C++
- 迴圈佇列C++實現佇列C++
- 分支語句和迴圈語句
- 七 while迴圈語句While
- JavaScript跳出for迴圈語句JavaScript
- 7-迴圈語句
- JavaScript 流程控制語句詳解:if語句、switch語句、while迴圈、for迴圈等JavaScriptWhile
- C++ 的基本語法C++
- 理解 JavaScript 中的迴圈JavaScript
- Node中的事件迴圈事件
- Go 1.22 中的 For 迴圈Go