capacity

Материал из cppreference.com
Перейти к: навигация, поиск

Синтаксис:

    #include <string>
    size_type capacity() const;

Функция capacity() возвращает количество элементов, которые может содержать строка, до того как ей понадобится выделить дополнительную память. Например, следующий код использует два различных метода, чтобы задать емкость двум векторам. Один метод передает аргумент в конструктор, чтобы задать начальный размер, а другой метод использует функцию reserve, чтобы достичь того же результата:

   vector<int> v1(10);
   cout << "The capacity of v1 is " << v1.capacity() << endl;
   vector<int> v2;
   v2.reserve(20);
   cout << "The capacity of v2 is " << v2.capacity() << endl;

Данный код производит следующий вывод:

   The capacity of v1 is 10
   The capacity of v2 is 20

Контейнеры C++ созданы с возможностью увеличиваться в размерах динамически. Это освобождает программиста от проблем, связанных с хранением произвольного количества элементов в контейнере. Однако, иногда программист может повысить производительность его программы, давая указания компилятору о размерах контейнеров, которые будет использовать его программа. Эти указания идут в функцию reserve() и конструктор, используемые в приведенном выше примере, и сообщают компилятору, насколько большой контейнер может потребоваться. Функция capacity() выполняется за константное временя.

Смотрите также: reserve, resize, size

Личные инструменты
Пространства имён
Варианты
Действия
Навигация
Инструменты
На других языках