Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Ref sınıfının bir örneğine zayıf başvuru temsil eder.
Sözdizimi
class WeakReference
Parametreler
Üyeler
Oluşturucular
| Üye | Açıklama |
|---|---|
| WeakReference::WeakReference | WeakReference sınıfının yeni bir örneğini başlatır. |
Yöntemler
| Üye | Açıklama |
|---|---|
| WeakReference::Resolve | Temel ref sınıfına bir tanıtıcı veya nesne artık yoksa nullptr döndürür. |
İşleçler
| Üye | Açıklama |
|---|---|
| WeakReference::operator= | WeakReference nesnesine yeni bir değer atar. |
| WeakReference::operator BoolType | Güvenli bool desenini uygular. |
Açıklamalar
WeakReference sınıfının kendisi bir ref sınıfı değildir ve bu nedenle Platform::Object^ öğesinden devralılmaz ve ortak bir yöntemin imzasında kullanılamaz.
WeakReference::operator=
WeakReference'a bir değer atar.
Sözdizimi
WeakReference& operator=(decltype(__nullptr));
WeakReference& operator=(const WeakReference& otherArg);
WeakReference& operator=(WeakReference&& otherArg);
WeakReference& operator=(const volatile ::Platform::Object^ const otherArg);
Açıklamalar
Yukarıdaki listedeki son aşırı yükleme, bir WeakReference değişkenine ref sınıfı atamanızı sağlar. Bu durumda başv sınıfı Platform::Object^'e indirilir. Özgün türü daha sonra WeakReference::Resolve<T> üye işlevindeki tür parametresi için bağımsız değişken olarak belirterek geri yüklersiniz.
WeakReference::operator BoolType
WeakReference sınıfı için güvenli bool desenini uygular. Kodunuzdan açıkça çağrılmamalıdır.
Sözdizimi
BoolType BoolType();
WeakReference::Resolve Yöntemi (Platform ad alanı)
Özgün başvuru sınıfına veya nullptr nesne artık mevcut değilse bir tanıtıcı döndürür.
Sözdizimi
template<typename T>
T^ Resolve() const;
Parametreler
Özellik Değeri/Dönüş Değeri
WeakReference nesnesinin daha önce ilişkilendirildiği ref sınıfının tanıtıcısı veya nullptr.
Örnek
Bar^ bar = ref new Bar();
//use bar...
if (bar != nullptr)
{
WeakReference wr(bar);
Bar^ newReference = wr.Resolve<Bar>();
}
Tür parametresinin T^ değil T olduğuna dikkat edin.
WeakReference::WeakReference Oluşturucusu
WeakReference oluşturmak için çeşitli yollar sağlar.
Sözdizimi
WeakReference();
WeakReference(decltype(__nullptr));
WeakReference(const WeakReference& otherArg);
WeakReference(WeakReference&& otherArg);
explicit WeakReference(const volatile ::Platform::Object^ const otherArg);
Örnek
MyClass^ mc = ref new MyClass();
WeakReference wr(mc);
MyClass^ copy2 = wr.Resolve<MyClass>();