函数argements:通过引用或迭代器传递标准集合?

时间:2018-03-13 14:54:56

标签: c++ iterator arguments c++14 pass-by-reference

当传递标准集合(例如std::stringstd::vector<std::string>)作为函数参数时,是通过引用还是通过迭代器更好地传递集合?

对集合的引用只是一个参数,而std::begin()std::end()都需要两个参数,因为它不容易优雅地辨别集合的结尾只是std::begin()

但是,很多标准库选择迭代器而不是集合引用,所以我想知道答案是否不那么简单?

是否有一个好的,客观的理由选择一种形式而不是另一种形式?

0 个答案:

没有答案