vector v;
auto end() const -> decltype(v.begin()) { return v.begin(); }
decltype(v.begin()) trailing-return-type iterator - v vector, .
- - end().
v - this->v - , , this.
this 'pointee is const (- -), this - block const*.
, this->v - vector const (- const), v.begin() - (this->v).begin() - const -overload, const_iterator.
, v.begin() trailing-return-type "" , iterator.
.