关于vector的报错

这是我初学vector时碰到的一个问题:

img


我是按照书中教的语法设计的一个小程序,但有报错,下面的[Warning] init-statement in selection statements only available with '-std=c++17' or '-std=gnu++17'我也不知道啥意思,到底错在哪儿啊,恳请不吝赐教!

带初始化的if语句是C++17新引入的语法,因此你必须通过-std=c++17选项来告诉编译器使用C++17语法来编译程序。
另外你的带初始化的if语句写法也是错的,你这里应该是for循环,把所有的if改成for
https://en.cppreference.com/w/cpp/language/if#If_statements_with_initializer

翻译:
某函数当前版本用不了, 必须改成C++17或 GNU++17

在Dev C++中设置使用 C++17
点击“工具” --> “编译选项” --> “通用” ,填入-std=c++17,如下图

img