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.
Bu sınıf, yeni vektör ve silme işleçlerini kullanan bir akıllı işaretçi nesnesini temsil eder.
Önemli
Bu sınıf ve üyeleri Windows Çalışma Zamanı yürütülen uygulamalarda kullanılamaz.
Sözdizimi
template<typename T>
class CAutoVectorPtr
Parametreler
T
İşaretçi türü.
Üyeler
Ortak Oluşturucular
| Veri Akışı Adı | Açıklama |
|---|---|
| CAutoVectorPtr::CAutoVectorPtr | Oluşturucu. |
| CAutoVectorPtr::~CAutoVectorPtr | Yok edici. |
Genel Yöntemler
| Veri Akışı Adı | Açıklama |
|---|---|
| CAutoVectorPtr::Allocate | tarafından CAutoVectorPtrişaret edilen nesne dizisi için gereken belleği ayırmak için bu yöntemi çağırın. |
| CAutoVectorPtr::Attach | Mevcut bir işaretçinin sahipliğini almak için bu yöntemi çağırın. |
| CAutoVectorPtr::D etach | Bir işaretçinin sahipliğini serbest bırakmak için bu yöntemi çağırın. |
| CAutoVectorPtr::Free | tarafından CAutoVectorPtrişaret edilen bir nesneyi silmek için bu yöntemi çağır. |
Ortak İşleçler
| Veri Akışı Adı | Açıklama |
|---|---|
| CAutoVectorPtr::operator T * | Atama işleci. |
| CAutoVectorPtr::operator = | Atama işleci. |
Ortak Veri Üyeleri
| Veri Akışı Adı | Açıklama |
|---|---|
| CAutoVectorPtr::m_p | İşaretçi veri üye değişkeni. |
Açıklamalar
Bu sınıf, kapsam dışında kalan kaynakları otomatik olarak boşaltarak bellek sızıntılarına karşı korumaya yardımcı olacak bir akıllı işaretçi oluşturmak ve yönetmek için yöntemler sağlar. CAutoVectorPtr, C++ new ve işleçleri yerine bellek ayırmak ve boşaltmak için ve delete kullanan vector new[] vector delete[] tek fark CAutoVectorPtr ile benzerdirCAutoPtr. Koleksiyon sınıfları gerekliyse bkz. CAutoVectorPtrElementTraits.CAutoVectorPtr
Akıllı işaretçi sınıfı kullanma örneği için bkz . CAutoPtr .
Gereksinimler
Üst bilgi: atlbase.h
CAutoVectorPtr::Allocate
tarafından CAutoVectorPtrişaret edilen nesne dizisi için gereken belleği ayırmak için bu yöntemi çağırın.
bool Allocate(size_t nElements) throw();
Parametreler
nElements
Dizideki öğelerin sayısı
Dönüş Değeri
Bellek başarıyla ayrılırsa true, hatada false döndürür.
Açıklamalar
Hata ayıklama derlemelerinde, CAutoVectorPtr::m_p üye değişkeni şu anda mevcut bir değere işaret ederse, yani NULL'a eşit değilse onay hatası oluşur.
CAutoVectorPtr::Attach
Mevcut bir işaretçinin sahipliğini almak için bu yöntemi çağırın.
void Attach(T* p) throw();
Parametreler
p
CAutoVectorPtr Nesnesi bu işaretçinin sahipliğini alır.
Açıklamalar
Bir CAutoVectorPtr nesne işaretçinin sahipliğini aldığında, kapsam dışına çıktığında işaretçiyi ve ayrılan verileri otomatik olarak siler. CAutoVectorPtr::D etach çağrılırsa, programcıya ayrılan kaynakları boşaltma sorumluluğu yeniden verilir.
Hata ayıklama derlemelerinde, CAutoVectorPtr::m_p üye değişkeni şu anda mevcut bir değere işaret ederse, yani NULL'a eşit değilse onay hatası oluşur.
CAutoVectorPtr::CAutoVectorPtr
Oluşturucu.
CAutoVectorPtr() throw();
explicit CAutoVectorPtr(T* p) throw();
CAutoVectorPtr(CAutoVectorPtr<T>& p) throw();
Parametreler
p
Mevcut bir işaretçi.
Açıklamalar
Nesne CAutoVectorPtr , mevcut bir işaretçi kullanılarak oluşturulabilir ve bu durumda işaretçinin sahipliğini aktarır.
CAutoVectorPtr::~CAutoVectorPtr
Yok edici.
~CAutoVectorPtr() throw();
Açıklamalar
Ayrılan tüm kaynakları serbesttir. CAutoVectorPtr::Free'ı çağırır.
CAutoVectorPtr::D etach
Bir işaretçinin sahipliğini serbest bırakmak için bu yöntemi çağırın.
T* Detach() throw();
Dönüş Değeri
İşaretçinin bir kopyasını döndürür.
Açıklamalar
bir işaretçinin sahipliğini serbest bırakır, CAutoVectorPtr::m_p üye değişkenini NULL olarak ayarlar ve işaretçinin bir kopyasını döndürür. çağrısından Detachsonra, nesnenin daha önce sorumluluk üstlenmiş olabileceği ayrılmış kaynakları serbest getirmek programcıya CAutoVectorPtr aittir.
CAutoVectorPtr::Free
tarafından CAutoVectorPtrişaret edilen bir nesneyi silmek için bu yöntemi çağır.
void Free() throw();
Açıklamalar
tarafından CAutoVectorPtr işaret edilen nesne serbest ve CAutoVectorPtr::m_p üye değişkeni NULL olarak ayarlanır.
CAutoVectorPtr::m_p
İşaretçi veri üye değişkeni.
T* m_p;
Açıklamalar
Bu üye değişkeni işaretçi bilgilerini tutar.
CAutoVectorPtr::operator =
Atama işleci.
CAutoVectorPtr<T>& operator= (CAutoVectorPtr<T>& p) throw();
Parametreler
p
İşaretçi.
Dönüş Değeri
CAutoVectorPtr< T >öğesine başvuru döndürür.
Açıklamalar
Atama işleci nesneyi geçerli herhangi bir işaretçiden ayırır CAutoVectorPtr ve yerine yeni p işaretçisini ekler.
CAutoVectorPtr::operator T *
Atama işleci.
operator T*() const throw();
Açıklamalar
Sınıf şablonunda tanımlanan nesne veri türüne bir işaretçi döndürür.