多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
[TOC] ## 概述 在传统 C++ 中,变量的声明虽然能够位于任何位置,甚至于`for`语句内能够声明一个临时变量`int`,但始终没有办法在`if`和`switch`语句中声明一个临时的变量 ``` #include <iostream> #include <vector> #include <algorithm> int main() { std::vector<int> vec = {1, 2, 3, 4}; // 在 c++17 之前 const std::vector<int>::iterator itr = std::find(vec.begin(), vec.end(), 2); if (itr != vec.end()) { *itr = 3; } // 需要重新定义一个新的变量 const std::vector<int>::iterator itr2 = std::find(vec.begin(), vec.end(), 3); if (itr2 != vec.end()) { *itr2 = 4; } // 将输出 1, 4, 3, 4 for (std::vector<int>::iterator element = vec.begin(); element != vec.end(); ++element) std::cout << *element << std::endl; } ```