Weak interface ptr::weak interface ptr: различия между версиями

Материал из CAMaaS preliminary wiki
Перейти к навигации Перейти к поиску
(Новая страница: «{{function_begin |weak_interface_ptr(); //1 template <class Y> weak_interface_ptr(const weak_interface_ptr<Y>& right); //2 template <class Y> weak_interface_ptr(w…»)
 
 
(не показаны 2 промежуточные версии этого же участника)
Строка 1: Строка 1:
{{function_begin |weak_interface_ptr(); //1
{{DISPLAYTITLE:weak_interface_ptr::weak_interface_ptr}}
{{function_begin |weak_interface_ptr() {{=}} default; //1
template <class Y>
template <class Y>
weak_interface_ptr(const weak_interface_ptr<Y>& right); //2
weak_interface_ptr(const weak_interface_ptr<Y>& right) noexcept; //2
template <class Y>
template <class Y>
weak_interface_ptr(weak_interface_ptr<Y>&& right); //3
weak_interface_ptr(weak_interface_ptr<Y>&& right) noexcept; //3
template <class Y>
template <class Y>
weak_interface_ptr(const shared_interface_ptr<Y>& right); //4|{{weak_interface_ptr::weak_interface_ptr brief}}
weak_interface_ptr(const shared_interface_ptr<Y>& right) noexcept; //4|{{weak_interface_ptr::weak_interface_ptr brief}}
# Конструктор по умолчанию.
# Конструктор по умолчанию.
# Конструктор, копирующий другой указатель [[weak_interface_ptr]] на реализацию интерфейса типа <tt>Y</tt>. Конструктор определен только, если указатель <tt>Y*</tt> неявно преобразуем в <source lang="cpp" inline>typename weak_interface_ptr::element_type*</source>.}}
# Конструктор, копирующий другой указатель [[weak_interface_ptr]] на реализацию интерфейса типа <tt>Y</tt>. Конструктор определен только, если указатель <tt>Y*</tt> неявно преобразуем в <source lang="cpp" inline>typename weak_interface_ptr::element_type*</source>.
# Конструктор, осуществляюий перемещение другого указателя [[weak_interface_ptr]] на реализацию интерфейса типа <tt>Y</tt>. Конструктор определен только, если указатель <tt>Y*</tt> неявно преобразуем в <source lang="cpp" inline>typename weak_interface_ptr::element_type*</source>.
# Конструктор, осуществляющий перемещение другого указателя [[weak_interface_ptr]] на реализацию интерфейса типа <tt>Y</tt>. Конструктор определен только, если указатель <tt>Y*</tt> неявно преобразуем в <source lang="cpp" inline>typename weak_interface_ptr::element_type*</source>.
# Конструктор, создающий [[weak_interface_ptr]] на основе указателя с владением [[shared_interface_ptr]], не завладевая самим объектом.}}
# Конструктор, создающий [[weak_interface_ptr]] на основе указателя с владением [[shared_interface_ptr]].}}
{{function template paramlist begin}}
{{function template paramlist begin}}
{{function template paramlist add|Y|Тип интерфейса, указатель на который неявно преобразуется в указатель <tt>_I*</tt> (шаблонный параметр класса [[weak_interface_ptr]]) и, в результате, инициализирует создаваемый экземпляр [[weak_interface_ptr]].}}
{{function template paramlist add|Y|Тип интерфейса, указатель на который неявно преобразуется в указатель <tt>_I*</tt> (шаблонный параметр класса [[weak_interface_ptr]]) и, в результате, инициализирует создаваемый экземпляр [[weak_interface_ptr]].}}
{{function template paramlist end}}
{{function template paramlist end}}
{{function_paramlist begin}}
{{function_paramlist begin}}
{{function_paramlist add|right|Умный указатель, который инициализирует создаваемый указатель [[weak_interface_ptr]].|paramdir=[in]}}
{{function_paramlist add|right|Умный указатель, который инициализирует создаваемый указатель [[weak_interface_ptr]].}}
{{function_paramlist end}}
{{function_paramlist end}}
{{function_end}}
{{function_end}}

Текущая версия на 20:26, 2 января 2018

weak_interface_ptr() = default; //1
template <class Y>
weak_interface_ptr(const weak_interface_ptr<Y>& right) noexcept; //2
template <class Y>
weak_interface_ptr(weak_interface_ptr<Y>&& right) noexcept; //3
template <class Y>
weak_interface_ptr(const shared_interface_ptr<Y>& right) noexcept; //4

Конструкторы класса weak_interface_ptr.

  1. Конструктор по умолчанию.
  2. Конструктор, копирующий другой указатель weak_interface_ptr на реализацию интерфейса типа Y. Конструктор определен только, если указатель Y* неявно преобразуем в typename weak_interface_ptr::element_type*.
  3. Конструктор, осуществляющий перемещение другого указателя weak_interface_ptr на реализацию интерфейса типа Y. Конструктор определен только, если указатель Y* неявно преобразуем в typename weak_interface_ptr::element_type*.
  4. Конструктор, создающий weak_interface_ptr на основе указателя с владением shared_interface_ptr.
Параметры шаблона
YТип интерфейса, указатель на который неявно преобразуется в указатель _I* (шаблонный параметр класса weak_interface_ptr) и, в результате, инициализирует создаваемый экземпляр weak_interface_ptr.
Параметры
rightУмный указатель, который инициализирует создаваемый указатель weak_interface_ptr.