Aracılığıyla paylaş


CSimpleStringT::GetBufferSetLength

Dahili karakter arabelleği için bir işaretçi döndürür CSimpleStringT kesilmesi veya tam olarak belirtilen uzunluğu ile eşleşecek şekilde gerekirse uzunluğu büyüyen nesnesine nLength.

PXSTR GetBufferSetLength(
   int nLength
);

Parametreler

  • nLength
    Tam boyutunu CSimpleStringT karakter karakter arabelleği.

Dönüş Değeri

A PXSTR nesnenin (boşla sonlandırılmış) karakter arabelleği için işaretçi.

Notlar

İç arabellek belirlenen bir süre almak için bu yöntemi çağırın CSimpleStringT nesnesi.Döndürülen PXSTR işaretçisi değil const ve bu nedenle doğrudan değiştirilmesine izin verir CSimpleStringT içeriği.

Tarafından döndürülen işaretçi kullanırsanız, GetBufferSetLength dize içeriğini değiştirmek için arama ReleaseBuffer iç durumu güncelleştirmek için CsimpleStringT diğer kullanmadan önce CSimpleStringT yöntemleri.

Tarafından döndürülen adres GetBufferSetLength çağrısının geçerli olmayabilir ReleaseBuffer çünkü ek CSimpleStringT neden olabilecek işlemleri CSimpleStringT bırakılan için arabellek.Arabellek uzunluğu, değişiklik yapmazsanız, atanır değil CSimpleStringT.

Tampon bellek otomatik olarak ne zaman serbest CSimpleStringT nesne bozulur.

Değil, dize uzunluğundan kendiniz izlemek, sondaki boş karakter eklemeyin.Kullanarak arabelleği serbest bıraktığınızda, son dize uzunluğunu belirtmelisiniz ReleaseBuffer.Aradığınızda, sondaki boş karakter eklediğiniz, ReleaseBuffer, uzunluğu için –1 (varsayılan) geçmesi ReleaseBuffer, ve ReleaseBuffer gerçekleştirecek bir strlen üzerinde arabellek uzunluğunu belirlemek için.

Başvuru sayma hakkında daha fazla bilgi için aşağıdaki makalelere bakın:

Örnek

Aşağıdaki örnek kullanımını göstermektedir CSimpleStringT::GetBufferSetLength.

CSimpleString str(pMgr);
LPTSTR pstr = str.GetBufferSetLength(3);
pstr[0] = _T('C');
pstr[1] = _T('u');
pstr[2] = _T('p');

// No need for trailing zero or call to ReleaseBuffer()
// because GetBufferSetLength() set it for us.

str += _T(" soccer is best!");
ASSERT(_tcscmp(str, _T("Cup soccer is best!")) == 0);   

Gereksinimler

Başlık: atlsimpstr.h

Ayrıca bkz.

Başvuru

CSimpleStringT sınıfı

CSimpleStringT::GetBuffer

CSimpleStringT::ReleaseBuffer