max_size () возвращает
максимальный возможный размер, который может достичь вектор из-за ограничений в реализации системы или библиотеки.
blockquote>], поэтому я полагаю, что максимальное значение зависит от реализации. На моей машине следующий код
std::vector
v; cout << v.max_size(); производит вывод:
4611686018427387903 // built as 64-bit target 1073741823 // built as 32-bit target
, поэтому формула 2 ^ (размер 64 (тип)) - 1 выглядит правильно для этого случая как хорошо.