System::SmartPtr::Cast yöntemi

SmartPtr::Cast() const method

Göstericiyi kendi tipine dönüştürür.

template<class Y,typename Check> std::enable_if_t<std::is_same<Y, T>::value, SmartPtr<Y>> System::SmartPtr<T>::Cast() const
ParametreAçıklama
Yİşaret edilen nesnenin hedef tipi.
KontrolDönüştürme mevcut değilse istisna fırlatmak için bayraklar.

ReturnValue

Her zaman paylaşımlı modda olan, türü değişmiş işaretçi.

Ayrıca Bakınız

SmartPtr::Cast() const method

Göstericiyi static_cast kullanarak temel tipe dönüştürür.

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
ParametreAçıklama
Yİşaret edilen nesnenin hedef tipi.
KontrolDönüştürme mevcut değilse istisna fırlatmak için bayraklar.

ReturnValue

Her zaman paylaşımlı modda olan, türü değişmiş işaretçi.

Ayrıca Bakınız

SmartPtr::Cast() const method

Göstericiyi dynamic_cast kullanarak türetilmiş tipe dönüştürür.

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
ParametreAçıklama
Yİşaret edilen nesnenin hedef tipi.
KontrolDönüştürme mevcut değilse istisna fırlatmak için bayraklar.

ReturnValue

Her zaman paylaşımlı modda olan değiştirilmiş tipteki işaretçi. Dönüştürme mevcut değilse InvalidCastException fırlatır.

Ayrıca Bakınız

SmartPtr::Cast() const method

Göstericiyi dynamic_cast kullanarak türetilmiş tipe dönüştürür.

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
ParametreAçıklama
Yİşaret edilen nesnenin hedef tipi.
KontrolDönüştürme mevcut değilse istisna fırlatmak için bayraklar.

ReturnValue

Her zaman paylaşımlı modda olan değiştirilmiş tipteki işaretçi. Dönüştürme mevcut değilse nullptr döndürür.

Ayrıca Bakınız