std::basic_string<CharT,Traits,Allocator>::begin, std::basic_string<CharT,Traits,Allocator>::cbegin - cppreference.com (original) (raw)
| iterator begin(); | (1) | (noexcept since C++11) (constexpr since C++20) |
|---|---|---|
| const_iterator begin() const; | (2) | (noexcept since C++11) (constexpr since C++20) |
| const_iterator cbegin() const noexcept; | (3) | (since C++11) (constexpr since C++20) |
Returns an iterator to the first character of the string.
begin() returns a mutable or constant iterator, depending on the constness of *this.
cbegin() always returns a constant iterator. It is equivalent to const_cast<const basic_string&>(*this).begin().
[edit] Parameters
(none)
[edit] Return value
Iterator to the first character.
[edit] Complexity
Constant.
[edit] Notes
libc++ backports cbegin() to C++98 mode.
[edit] Example
#include #include int main() { std::string s("Exemplar"); *s.begin() = 'e'; std::cout << s << '\n'; auto i = s.cbegin(); std::cout << *i << '\n'; // *i = 'E'; // error: i is a constant iterator }
Output:
[edit] See also
| | returns an iterator to the end (public member function) [edit] | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | | returns an iterator to the beginning (public member function of std::basic_string_view<CharT,Traits>) [edit] |