Methode System::SmartPtr::Cast

SmartPtr::Cast() const method

Wandelt den Zeiger in seinen eigenen Typ um.

template<class Y,typename Check> std::enable_if_t<std::is_same<Y, T>::value, SmartPtr<Y>> System::SmartPtr<T>::Cast() const
ParameterBeschreibung
YZieltyp des referenzierten Objekts.
CheckFlags, um eine Ausnahme zu werfen, wenn kein Cast verfügbar ist.

ReturnValue

Zeiger des geänderten Typs, der stets im Shared‑Modus ist.

Siehe auch

SmartPtr::Cast() const method

Wandelt den Zeiger mittels static_cast in den Basistyp um.

template<class Y,typename Check> std::enable_if_t<!std::is_same<Y, T>::value &&std::is_base_of<Y, T>::value, SmartPtr<Y>> System::SmartPtr<T>::Cast() const
ParameterBeschreibung
YZieltyp des referenzierten Objekts.
CheckFlags, um eine Ausnahme zu werfen, wenn kein Cast verfügbar ist.

ReturnValue

Zeiger des geänderten Typs, der stets im Shared‑Modus ist.

Siehe auch

SmartPtr::Cast() const method

Wandelt den Zeiger mittels dynamic_cast in den abgeleiteten Typ um.

template<class Y,typename Check> std::enable_if_t<Check::value &&!std::is_same<Y, T>::value &&!std::is_base_of<Y, T>::value, SmartPtr<Y>> System::SmartPtr<T>::Cast() const
ParameterBeschreibung
YZieltyp des referenzierten Objekts.
CheckFlags, um eine Ausnahme zu werfen, wenn kein Cast verfügbar ist.

ReturnValue

Zeiger mit geändertem Typ, der immer im Shared-Modus ist. Wirft InvalidCastException, wenn keine Konvertierung verfügbar ist.

Siehe auch

SmartPtr::Cast() const method

Wandelt den Zeiger mittels dynamic_cast in den abgeleiteten Typ um.

template<class Y,typename Check> std::enable_if_t<!Check::value &&!std::is_same<Y, T>::value &&!std::is_base_of<Y, T>::value, SmartPtr<Y>> System::SmartPtr<T>::Cast() const
ParameterBeschreibung
YZieltyp des referenzierten Objekts.
CheckFlags, um eine Ausnahme zu werfen, wenn kein Cast verfügbar ist.

ReturnValue

Zeiger mit geändertem Typ, der immer im Shared-Modus ist. Gibt nullptr zurück, wenn keine Konvertierung verfügbar ist.

Siehe auch