如果你使用基于范围的for循环而不是标准的for循环,你能避免超出范围的错误吗?

我尝试用左右范围为基础的for循环中,如果您使用范围为基础,通过矢量循环来运行到超出范围的错误有没有办法避免这种错误,如果您使用的是基于范围的for循环

int main()
{
    vector<int> num{ 1,2,3,4,5 };
    for (auto i : num)
    {
        cout << num[i] << endl;
    }
}

它显示了这个错误

回答

这与循环的类型无关。您的循环查看ivector中的所有值num,然后打印num[i]。其中之一是5,所以它打印num[5]。但是num有 5 个元素,所以它们只能到num[4]. 超出范围。


以上是如果你使用基于范围的for循环而不是标准的for循环,你能避免超出范围的错误吗?的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>