CStrBufT Sınıfı
Bu sınıf, var olan CStringT
bir nesne için ve çağrıları için GetBuffer
ReleaseBuffer
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ı ReleaseBuffer
konusunda 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 private
unutmayı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 CStrBufT
belirtilen 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.
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin