gpt4 book ai didi

c++ - .begin() 和 .end() 的意义何在?

转载 作者:IT老高 更新时间:2023-10-28 22:32:09 25 4
gpt4 key购买 nike

在 C++ 库数组中,在哪些情况下拥有 .begin().end() 成员函数很有用?

在 cplusplus.com 上,示例使用是遍历数组:

for ( auto it = myarray.begin(); it != myarray.end(); ++it )

但是

for (int i = 0; i < myarray.size(); i++)

可以用于此。

最佳答案

begin()end() 返回迭代器。迭代器提供统一的语法来访问不同类型的容器。乍一看,它们可能看起来像是遍历简单数组的过度杀伤力,但考虑到您可以编写相同的代码来遍历列表或映射。

这种对各种容器的统一访问将允许您编写适用于所有容器的算法,而无需了解它们的内部结构。从头到尾的 for 循环只是更大马赛克中的第一 block 。只需查找 standard algorithms 的列表即可欣赏这种简单抽象的力量。

关于c++ - .begin() 和 .end() 的意义何在?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32125836/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com