2.4.3 for
Name
for
Description
The for statement lets you repeat a statement or compound statement a specified number of times. The body of a for statement is executed zero or more times until an optional condition becomes false.
Remark
Examples
EX1
void for_ex() { for(int ii = 0; ii < 3; ii++) { out_int("ii=", ii); } }
- for support iterating over range
EX2
//for ([int k, string v] : map) {} //for (auto& [k, v] : map) {} void for_map_ex() { omap<int, string> m1; m1.Set(100, "Hello"); m1.Set(200, "World"); m1.Set(300, "test"); for ([int k, string v] : m1) { printf("%d == %s\r\n", k, v); } for (auto& [key, val], index: m1) { printf("[%d] %d -> %s\r\n", index, key, val); } }
EX3
//for (double vv : vec) {} void for_vec() { vector vData = {0.37, 12.049, 856}; for (double vv : vData) { out_double("value=",vv); } }
EX4
//for (auto& ref, size_t idx : vv) {} //for (auto nn, index : arr) {} void for_vec2() { vector<string> vData = {"AUD", "YUAN", "HKD"}; for (auto nn, index : vData) { printf("%d = %s\n", index, nn); nn = "--"; // value in vData is not changed } for (auto& ref, size_t idx : vData) { printf("%d = %s\n", idx, ref); ref = "--"; // value in vData is changed } }