Шаг 443.
Библиотека STL. Числовые типы. Строение класса valarray. Операции создания, копирования и удаления

    На этом шаге мы перечислим методы, реализующие операции создания, копирования и удаления.

    Для выполнения указанных операций используются следующие методы.

  valarray::valarray ()
Конструктор по умолчанию. Создает пустой массив значений.

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

  explicit <I>valarray</I>::valarray (size_t num)
Создает массив значений, содержащий num элементов.

    Элементы инициализируются конструктором по умолчанию (0 для базовых типов данных).

  valarray::valarray (const T& value, size_t num)
Создает массив значений, содержащий num элементов. Элементы инициализируются значением value.

    Обратите внимание на нестандартный порядок следования параметров. В интерфейсе остальных классов стандартной библиотеки C++ параметр num идет первым, а параметр value - вторым.

  valarray::valarray (const T* array, size_t num)
Создает массив значений, содержащий num элементов. Элементы инициализируются значениями элементов массива array.

    Перед вызовом необходимо убедиться в том, что массив array содержит не менее num элементов; в противном случае вызов приводит к непредсказуемым последствиям.

  valarray::valarray (const valarray& va)
Копирующий конструктор. Создает массив значений как копию .
  valarray::~valarray ()
Деструктор. Уничтожает все элементы и освобождает память.

    Вдобавок массивы значений могут создаваться объектами внутренних вспомогательных классов slice_array, gslice_array, mask_array и indirect_array.

    На следующем шаге мы рассмотрим операции присваивания.




Предыдущий шаг Содержание Следующий шаг