weak_interface_ptr

Материал из CAMaaS preliminary wiki
Перейти к навигации Перейти к поиску

Реализация умного указателя, std::weak_ptr, на реализацию интерфейса без владения.

template <class _I>
struct weak_interface_ptr;
_IТип интерфейса - наследника InterfaceBase, указатель на реализацию которого определяет специализация weak_interface_ptr.
Открытые типы
ТипОписание
element_typeЭквивалентен параметру шаблона _I.
Открытые методы
МетодОписание
(конструкторы)Конструкторы класса weak_interface_ptr.
operator=Операторы присваивания.
lockЕсли смарт-указатель ассоциирован с действительным указателем на интерфейс, разделяет владение им и возвращает объект shared_interface_ptr, реализующий это владение. Если же смарт-указатель weak_interface_ptr пуст или ассоциирован с указателем на уже не существующую в памяти реализацию интерфейса, то возвращается пустой shared_interface_ptr.
Наследует открыто
КлассОписание
std::weak_ptr<_I>Общая реализация указателя без владения.
См. также
std::weak_ptrАналогичный указатель без владения стандартной библиотеки C++.
shared_interface_ptrСмарт-указатель, реализующий разделяемое владение указателями на программные интерфейсы с помощью std::shared_ptr.
unique_interface_ptrСмарт указатель на программный интерфейс, реализующий эксклюзивное владение интерфейсом.