public member function
<string>

std::string::max_size

size_t max_size() const;
size_t max_size() const noexcept;
Return maximum size of string
Returns the maximum length the string can reach.

This is the maximum potential length the string can reach due to known system or library implementation limitations, but the object is not guaranteed to be able to reach that length: it can still fail to allocate storage at any point before that length is reached.

Parameters

none

Return Value

The maximum length the string can reach.

size_t is an unsigned integral type (the same as member type string::size_type).

Example

1
2
3
4
5
6
7
8
9
10
11
12
13
// comparing size, length, capacity and max_size
#include <iostream>
#include <string>

int main ()
{
  std::string str ("Test string");
  std::cout << "size: " << str.size() << "\n";
  std::cout << "length: " << str.length() << "\n";
  std::cout << "capacity: " << str.capacity() << "\n";
  std::cout << "max_size: " << str.max_size() << "\n";
  return 0;
}

A possible output for this program could be:
size: 11
length: 11
capacity: 15
max_size: 4294967291


Complexity

Unspecified, but generally constant.
Constant.

Iterator validity

No changes.

Data races

The object is accessed.

Exception safety

No-throw guarantee: this member function never throws exceptions.

See also