Aracılığıyla paylaş


CStrBufT Sınıfı

Bu sınıf, var olan CStringT bir nesne için ve çağrıları için GetBufferReleaseBuffer otomatik kaynak temizleme sağlar.

Sözdizimi

template<typename TCharType>
class CStrBufT

Parametreler

TCharType
Sınıfın CStrBufT karakter türü. Aşağıdakilerden biri olabilir:

  • char (ANSI karakter dizeleri için)

  • wchar_t (Unicode karakter dizeleri için)

  • TCHAR (hem ANSI hem de Unicode karakter dizeleri için)

Üyeler

Genel Tür Tanımları

Ad Tanım
PCXSTR Sabit bir dizeye işaretçi.
PXSTR Dize işaretçisi.
StringType Arabelleği bu sınıf şablonunun özelleştirmeleri tarafından işlenecek dize türü.

Ortak Oluşturucular

Ad Tanım
CStrBufT::CStrBufT Dize arabelleği nesnesinin oluşturucus.

Genel Yöntemler

Ad Tanım
CStrBufT::SetLength İlişkili dize nesnesinin karakter arabelleği uzunluğunu ayarlar.

Ortak İşleçler

Ad Tanım
CStrBufT::operator PCXSTR İlişkili dize nesnesinin karakter arabelleğine bir const işaretçi alır.
CStrBufT::operator PXSTR İlişkili dize nesnesinin karakter arabelleğine bir işaretçi alır.

Genel Sabitler

Ad Tanım
CStrBufT::AUTO_LENGTH Yayında dizenin yeni uzunluğunu otomatik olarak belirleyin.
CStrBufT::SET_LENGTH Dize nesnesinin uzunluğunu GetBuffer zamanında ayarlama

Açıklamalar

Bu sınıf GetBuffer ve ReleaseBuffer veya GetBufferSetLength ve ReleaseBufferçağrılarını değiştirmek için sarmalayıcı sınıfı olarak kullanılır.

Birincil olarak yardımcı sınıf CStrBufT olarak tasarlanan, bir geliştiricinin nasıl veya ne zaman çağrılması ReleaseBufferkonusunda endişelenmeden bir dize nesnesinin karakter arabelleğiyle çalışması için kullanışlı bir yol sağlar. Bir özel durum veya birden çok çıkış kodu yolu söz konusu olduğunda sarmalayıcı nesnesi doğal olarak kapsamın dışına çıktığından bu mümkündür; dize kaynağını serbest bırakır.

Gereksinimler

Üst bilgi: atlsimpstr.h

CStrBufT::AUTO_LENGTH

Yayında dizenin yeni uzunluğunu otomatik olarak belirleyin.

static const DWORD AUTO_LENGTH = 0x01;

Açıklamalar

Yayında dizenin yeni uzunluğunu otomatik olarak belirleyin. Dize null olarak sonlandırılmalıdır.

CStrBufT::CStrBufT

Arabellek nesnesi oluşturur.

CStrBufT(StringType& str, int nMinLength, DWORD dwFlags = AUTO_LENGTH) throw(...);
explicit CStrBufT(StringType& str) throw(...);

Parametreler

Str
Arabellekle ilişkilendirilmiş dize nesnesi. Genellikle geliştirici önceden tanımlanmış tür tanımlarını CStrBuf (TCHAR değişkeni), CStrBufA (char değişken) ve CStrBufW (wchar_t değişken) kullanır.

nMinLength
Karakter arabelleğinin en düşük uzunluğu.

Dwflags
Dize uzunluğunun otomatik olarak belirlenip belirlenmediğini belirler. Aşağıdakilerden biri olabilir:

  • AUTO_LENGTH Dize uzunluğu, CSimpleStringT::Release çağrıldığında otomatik olarak belirlenir. Dize null olarak sonlandırılmalıdır. Varsayılan değer.

  • CSimpleStringT::GetBuffer çağrıldığında SET_LENGTH Dize uzunluğu ayarlanır.

Açıklamalar

İlişkili dize nesnesi için bir dize arabelleği oluşturur. Oluşturma sırasında CSimpleStringT ::GetBuffer veya CSimpleStringT::GetBufferSetLength çağrılır.

Kopya oluşturucusunun olduğunu privateunutmayın.

CStrBufT::operator PCXSTR

İlişkili dize nesnesinde C stili bir dize olarak depolanan karakterlere doğrudan erişir.

operator PCXSTR() const throw();

İade Değeri

Dize verilerinin karakter işaretçisi.

Açıklamalar

Dize nesnesinin karakter arabelleğine bir işaretçi döndürmek için bu işlevi çağırın. Dize nesnesinin içeriği bu işaretçiyle değiştirilemez.

CStrBufT::operator PXSTR

İlişkili dize nesnesinde C stili bir dize olarak depolanan karakterlere doğrudan erişir.

operator PXSTR() throw();

İade Değeri

Dize verilerinin karakter işaretçisi.

Açıklamalar

Dize nesnesinin karakter arabelleğine bir işaretçi döndürmek için bu işlevi çağırın. Geliştirici bu işaretçiyle dize nesnesinin içeriğini değiştirebilir.

CStrBufT::P CXSTR

Sabit bir dizeye işaretçi.

typedef CSimpleStringT<TCharType>::PCXSTR PCXSTR;

CStrBufT::P XSTR

Dize işaretçisi.

typedef CSimpleStringT<TCharType>::PXSTR PXSTR;

CStrBufT::SET_LENGTH

Dize nesnesinin uzunluğunu zamanında GetBuffer ayarlayın.

static const DWORD SET_LENGTH = 0x02;

Açıklamalar

Dize nesnesinin uzunluğunu GetBuffer zamanında ayarlayın.

Dize arabellek nesnesi oluşturulduğunda CSimpleStringT::GetBuffer ve CSimpleStringT::GetBufferSetLength'in çağrılıp çağrılmadığını belirler.

CStrBufT::SetLength

Karakter arabelleğinin uzunluğunu ayarlar.

void SetLength(int nLength);

Parametreler

nLength
Dize nesnesinin karakter arabelleğinin yeni uzunluğu.

Dekont

oluşturucusunda CStrBufTbelirtilen minimum arabellek uzunluğuna eşit veya ondan küçük olmalıdır.

Açıklamalar

Arabellek nesnesi tarafından temsil edilen dizenin uzunluğunu ayarlamak için bu işlevi çağırın.

CStrBufT::StringType

Arabelleği bu sınıf şablonunun özelleştirmeleri tarafından işlenecek dize türü.

typedef CSimpleStringT<TCharType> StringType;

Açıklamalar

TCharType , sınıf şablonunu özelleştirmek için kullanılan karakter türüdür.

Ayrıca bkz.

Hiyerarşi Grafiği
ATL/MFC Paylaşılan Sınıfları