标签: c++ stl iterator containers
我一直在使用STL,但总是想知道为什么函数的标准参数几乎总是需要操作范围(begin(),end()等)的迭代器而不是实际的容器。
begin()
end()
我很少需要在使用这些功能时定义子范围,而在其他功能中也没有看到很多子范围。是否只要求全系列的容器更具可读性?他们仍然可以为范围提供额外的功能,但是假设经常使用STL,我们会节省很多代码。我相信这个设计一定有理由但它是什么?