我是 C++ 的新手。所以,请多多包涵。我正在研究该std::vector
课程的实施。我发现了以下两种不同的begin()
方法实现。我知道第一个返回一个 RW 迭代器,第二个返回一个只读迭代器。我认为仅仅返回类型的差异对于函数重载是不够的。那么这是如何工作的呢?
iterator
begin()
{ return iterator(this->_M_impl._M_start); }
const_iterator
begin() const
{ return const_iterator(this->_M_impl._M_start); }