## SmartPtr::Cast() const method


يحوّل المؤشر إلى نوعه نفسه.

```cpp
template<class Y,typename Check> std::enable_if_t<std::is_same<Y, T>::value, SmartPtr<Y>> System::SmartPtr<T>::Cast() const
```


| Parameter | الوصف |
| --- | --- |
| Y | نوع الهدف للكائن المشار إليه. |
| Check | علامات لإلقاء استثناء إذا لم يتوفر تحويل. |

### ReturnValue

مؤشر بنوع متغير يكون دائمًا في وضع المشاركة.

## انظر أيضًا

* Class [SmartPtr](../)
* Class [SmartPtr](../)
* Namespace [System](../../)
* Library [Aspose.Page for C++](../../../)
## SmartPtr::Cast() const method


يحوّل المؤشر إلى النوع الأساسي باستخدام static_cast.

```cpp
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
```


| Parameter | الوصف |
| --- | --- |
| Y | نوع الهدف للكائن المشار إليه. |
| Check | علامات لإلقاء استثناء إذا لم يتوفر تحويل. |

### ReturnValue

مؤشر بنوع متغير يكون دائمًا في وضع المشاركة.

## انظر أيضًا

* Class [SmartPtr](../)
* Class [SmartPtr](../)
* Namespace [System](../../)
* Library [Aspose.Page for C++](../../../)
## SmartPtr::Cast() const method


يحوّل المؤشر إلى النوع المشتق باستخدام dynamic_cast.

```cpp
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
```


| Parameter | الوصف |
| --- | --- |
| Y | نوع الهدف للكائن المشار إليه. |
| Check | علامات لإلقاء استثناء إذا لم يتوفر تحويل. |

### ReturnValue

مؤشر من نوع متغير يكون دائمًا في الوضع المشترك. يرمي InvalidCastException إذا لم يتوفر تحويل.

## انظر أيضًا

* Class [SmartPtr](../)
* Class [SmartPtr](../)
* Namespace [System](../../)
* Library [Aspose.Page for C++](../../../)
## SmartPtr::Cast() const method


يحوّل المؤشر إلى النوع المشتق باستخدام dynamic_cast.

```cpp
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
```


| Parameter | الوصف |
| --- | --- |
| Y | نوع الهدف للكائن المشار إليه. |
| Check | علامات لإلقاء استثناء إذا لم يتوفر تحويل. |

### ReturnValue

مؤشر من نوع متغير يكون دائمًا في الوضع المشترك. يُعيد nullptr إذا لم يتوفر تحويل.

## انظر أيضًا

* Class [SmartPtr](../)
* Class [SmartPtr](../)
* Namespace [System](../../)
* Library [Aspose.Page for C++](../../../)
