StreamRef::StreamRef: различия между версиями

Материал из CAMaaS preliminary wiki
Перейти к навигации Перейти к поиску
Строка 4: Строка 4:
StreamRef(StreamRef&& right) noexcept; //4
StreamRef(StreamRef&& right) noexcept; //4
template <class AnotherAdapter>
template <class AnotherAdapter>
StreamRef(const AnotherAdapter& right); //5
StreamRef(const AnotherAdapter& right) noexcept; //5
|{{StreamRef::StreamRef brief}}
|{{StreamRef::StreamRef brief}}
# Конструктор по умолчанию, инициализирующий экземпляр адаптера нулевым адресом.
# Конструктор по умолчанию, инициализирующий экземпляр адаптера нулевым адресом.

Версия 14:02, 7 августа 2019

StreamRef() = default; //1
StreamRef(IStream* pStream) noexcept; //2
StreamRef(const StreamRef& right) noexcept; //3
StreamRef(StreamRef&& right) noexcept; //4
template <class AnotherAdapter>
StreamRef(const AnotherAdapter& right) noexcept; //5

Конструкторы, определенные требованиями ссылочного адаптера.

  1. Конструктор по умолчанию, инициализирующий экземпляр адаптера нулевым адресом.
  2. Конструктор, инициализирующий экземпляр адаптера адресом реализации потока.
  3. Конструктор, выполняющий инициализацию адаптера с копированием адаптируемой реализации интерфейса.
  4. Конструктор, выполняющий инициализацию адаптера с перемещением адаптируемой реализации интерфейса. Состояние right в результате операции не определено.
  5. Конструктор, инициализирующий адаптер адресом реализации интерфейса, приведенным из адреса, заданного адаптером right, к типу IStream. Шаблон 5 участвует в перегрузке, если только тип interface_type типа параметра существует и задает тип, указатель на который неявно преобразуем в IStream.
Параметры
[in]pStreamУказатель на реализацию потока.
rightАдаптер, интерфейсный указатель которого инициализирует создаваемый адаптер.