std::vector<int> v{1,2,3,45};
if(auto iter=std::find(v.begin(),v.end(),3);iter!=v.end()){
std::cout<<iter-v.begin()<<std::endl;
}
这个 `if` 语句的语法是 C++17 引入的一个新的语法结构,称为 "if with initializer",它允许我们在 if 语句中声明并初始化一个变量,这个变量在 if 语句的作用域内有效。它的语法结构如下:
```cpp
if (init-statement; condition)
{
// statements
}
```
其中,`init-statement` 是一个声明语句或语句块,用于定义和初始化某个值,`condition` 是一个 bool 类型的表达式,它的值决定 if 语句体是否执行。当 `condition` 为 true 时,执行语句体。