What is std::vector::front() used for?

c++, stl, vector

Solution

Some of the generic algorithms that also work on lists use it.

This is an example of a general principle: if you provide accessors for all the semantics you support, not just the implementation you support, it is easier to write generically and therefore easier to reuse code.

Problem

Sorry if this has been asked before, but I am wondering what the use of `std::vector::front()` is. Is there a reason to use e.g. `myvector.front()` rather than `myvector[0]` or `myvector.at(0)`?

Original source