System::SmartPtr::Cast methode

SmartPtr::Cast() const method

Casts pointer naar zijn eigen type.

template<class Y,typename Check> std::enable_if_t<std::is_same<Y, T>::value, SmartPtr<Y>> System::SmartPtr<T>::Cast() const
ParameterBeschrijving
YDoeltype van het aangewezen object.
ControleVlaggen om een uitzondering te werpen als er geen cast beschikbaar is.

ReturnValue

Pointer van gewijzigd type die altijd in gedeelde modus is.

Zie ook

SmartPtr::Cast() const method

Casts pointer naar basistype met static_cast.

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
ParameterBeschrijving
YDoeltype van het aangewezen object.
ControleVlaggen om een uitzondering te werpen als er geen cast beschikbaar is.

ReturnValue

Pointer van gewijzigd type die altijd in gedeelde modus is.

Zie ook

SmartPtr::Cast() const method

Casts pointer naar afgeleid type dynamic_cast.

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
ParameterBeschrijving
YDoeltype van het aangewezen object.
ControleVlaggen om een uitzondering te werpen als er geen cast beschikbaar is.

ReturnValue

Pointer van gewijzigd type die altijd in gedeelde modus is. Werpt InvalidCastException als er geen conversie beschikbaar is.

Zie ook

SmartPtr::Cast() const method

Casts pointer naar afgeleid type dynamic_cast.

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
ParameterBeschrijving
YDoeltype van het aangewezen object.
ControleVlaggen om een uitzondering te werpen als er geen cast beschikbaar is.

ReturnValue

Pointer van gewijzigd type die altijd in gedeelde modus is. Retourneert nullptr als er geen conversie beschikbaar is.

Zie ook