CFixedStringT Sınıfı
Bu sınıf, sabit karakter arabelleğine sahip bir dize nesnesini temsil eder.
Sözdizimi
template<class StringType, int t_nChars>
class CFixedStringT : private CFixedStringMgr, public StringType
Parametreler
StringType
Sabit dize nesnesi için temel sınıf olarak kullanılır ve herhangi bir CStringT
tabanlı tür olabilir. Bazı örnekler arasında , CStringA
ve CStringW
yer alırCString
.
t_nChars
Arabellekte depolanan karakter sayısı.
Üyeler
Ortak Oluşturucular
Ad | Tanım |
---|---|
CFixedStringT::CFixedStringT | Dize nesnesinin oluşturucus. |
Ortak İşleçler
Ad | Tanım |
---|---|
CFixedStringT::operator = | Nesneye yeni bir CFixedStringT değer atar. |
Açıklamalar
Bu sınıf, tabanlı CStringT
bir özel dize sınıfı örneğidir. Benzer olsa da, iki sınıf uygulamada farklılık gösterir. ile CStringT
arasındaki CFixedStringT
başlıca farklar şunlardır:
İlk karakter arabelleği nesnenin bir parçası olarak ayrılır ve boyutu t_nChars. Bu, nesnenin
CFixedString
performans amacıyla bitişik bir bellek öbeklerini kaplamasına olanak tanır. Ancak, birCFixedStringT
nesnenin içeriği t_nChars ötesinde büyürse, arabellek dinamik olarak ayrılır.Nesnenin
CFixedStringT
karakter arabelleği her zaman aynı uzunluktadır ( t_nChars). Nesneler içinCStringT
arabellek boyutuyla ilgili bir sınırlama yoktur.için
CFixedStringT
bellek yöneticisi, CStringData nesnesinin iki veya daha fazlaCFixedStringT
nesne arasında paylaşımına izin verilmeyen şekilde özelleştirilir.CStringT
nesneleri bu sınırlamaya sahip değildir.
Genel olarak dize nesneleri için özelleştirme CFixedStringT
ve bellek yönetimi hakkında daha fazla bilgi için bkz . Bellek Yönetimi ve CStringT.
Devralma Hiyerarşisi
IAtlStringMgr
StringType
CFixedStringMgr
CFixedStringT
Gereksinimler
Üst bilgi: cstringt.h
CFixedStringT::CFixedStringT
Bir CFixedStringT
nesne oluşturur.
CFixedStringT() throw();
explicit CFixedStringT(IAtlStringMgr* pStringMgr) throw();
CFixedStringT(const CFixedStringT<StringType, t_nChars>& strSrc);
CFixedStringT(const StringType& strSrc);
CFixedStringT(const StringType::XCHAR* pszSrc);
explicit CFixedStringT(const StringType::YCHAR* pszSrc);
explicit CFixedStringT(const unsigned char* pszSrc);
Parametreler
pszSrc
Bu CFixedStringT
nesneye kopyalanacak null ile sonlandırılan bir dize.
strSrc
Bu CFixedStringT
nesneye kopyalanacak mevcut CFixedStringT
bir nesne.
pStringMgr
Nesnenin bellek yöneticisinin işaretçisi CFixedStringT
. ve için bellek yönetimi hakkında IAtlStringMgr
daha fazla bilgi için CFixedStringT
bkz . Bellek Yönetimi ve CStringT.
Açıklamalar
Oluşturucular giriş verilerini yeni ayrılmış depolama alanına kopyaladığı için bellek özel durumlarının neden olabileceğini bilmeniz gerekir. Bu oluşturuculardan bazıları dönüştürme işlevi görür.
CFixedStringT::operator =
Mevcut CFixedStringT
bir nesneyi yeni verilerle yeniden başlatıyor.
CFixedStringT<StringType, t_nChars>& operator=(
const CFixedStringT<StringType, t_nChars>& strSrc);
CFixedStringT<StringType, t_nChars>& operator=(const char* pszSrc);
CFixedStringT<StringType, t_nChars>& operator=(const wchar_t* pszSrc);
CFixedStringT<StringType, t_nChars>& operator=(const unsigned char* pszSrc);
CFixedStringT<StringType, t_nChars>& operator=(const StringType& strSrc);
Parametreler
pszSrc
Bu CFixedStringT
nesneye kopyalanacak null ile sonlandırılan bir dize.
strSrc
Bu CFixedStringT
nesneye kopyalanacak bir varCFixedStringT
.
Açıklamalar
Atama işlecini her kullandığınızda bellek özel durumlarının oluşabileceğini unutmayın çünkü sonuçta elde CFixedStringT
edilen nesneyi tutmak için genellikle yeni depolama alanı ayrılır.
Ayrıca bkz.
CStringT Sınıfı
Hiyerarşi Grafiği
ATL/MFC Paylaşılan Sınıfları
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