System::SmartPtr::Cast metodo

SmartPtr::Cast() const method

Casta il puntatore al suo stesso tipo.

template<class Y,typename Check> std::enable_if_t<std::is_same<Y, T>::value, SmartPtr<Y>> System::SmartPtr<T>::Cast() const
ParametroDescrizione
YTipo di destinazione dell’oggetto puntato.
CheckFlag per generare un’eccezione se non è disponibile alcun cast.

ReturnValue

Puntatore di tipo modificato che è sempre in modalità condivisa.

Vedi anche

SmartPtr::Cast() const method

Casta il puntatore al tipo base usando 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
ParametroDescrizione
YTipo di destinazione dell’oggetto puntato.
CheckFlag per generare un’eccezione se non è disponibile alcun cast.

ReturnValue

Puntatore di tipo modificato che è sempre in modalità condivisa.

Vedi anche

SmartPtr::Cast() const method

Casta il puntatore al tipo derivato usando 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
ParametroDescrizione
YTipo di destinazione dell’oggetto puntato.
CheckFlag per generare un’eccezione se non è disponibile alcun cast.

ReturnValue

Puntatore di tipo modificato che è sempre in modalità condivisa. Lancia InvalidCastException se non è disponibile alcuna conversione.

Vedi anche

SmartPtr::Cast() const method

Casta il puntatore al tipo derivato usando 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
ParametroDescrizione
YTipo di destinazione dell’oggetto puntato.
CheckFlag per generare un’eccezione se non è disponibile alcun cast.

ReturnValue

Puntatore di tipo modificato che è sempre in modalità condivisa. Restituisce nullptr se non è disponibile alcuna conversione.

Vedi anche