Aracılığıyla paylaş


CSimpleStringT::LockBuffer

Başvuru sayma devre dışı bırakır ve dize arabelleğindeki korur.

PXSTR LockBuffer( );

Dönüş Değeri

Bir işaretçi bir CSimpleStringT nesne veya bir boşlukla sonlandırılmış dize.

Notlar

Arabelleğin kilitlemek için bu yöntemi çağırın CSimpleStringT nesnesi.Çağırarak LockBuffer, başvuru sayısı için –1 ile dize bir kopyasını oluşturun.Başvuru sayısı değeri -1 olduğunda dize arabelleğindeki "kilitli" olarak kabul edilir.Kilitli durumda iken, dize iki yolla korunur:

  • Bu dizeyi kilitli dize olarak atanmış olsa bile başka bir dize kilitli dizesinde verilere bir başvuru elde edebilirsiniz.

  • Bu dizeyi kilitli dize kopyalanır bile kilitli dize asla başka bir dize başvuru.

Dize arabelleğinde kilitleyerek dizenin özel arabellek tutuluyor eskisi gibi kalacaktır emin olun.

İle bitirdikten sonra LockBuffer, çağrı UnlockBuffer başvuru sayısı 1'e sıfırlamak için.

[!NOT]

Çağırırsanız, GetBuffer kilitli arabellek ve size GetBuffer parametresi nMinBufferLength büyük için geçerli arabellek uzunluğu, arabelleği kilidi kaybedersiniz.Bu tür bir çaðrý GetBuffer geçerli arabellek yok eder, istenen boyuttaki bir arabelleği ile değiştirir ve başvuru sayısı sıfır olarak sıfırlar.

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::LockBuffer.

CSimpleString str(_T("Hello"), pMgr);
TCHAR ch;

str.LockBuffer();
ch = str.GetAt(2);
_tprintf_s(_T("%c"), ch);
str.UnlockBuffer();

Gereksinimler

Başlık: atlsimpstr.h

Ayrıca bkz.

Başvuru

CSimpleStringT sınıfı

CSimpleStringT::ReleaseBuffer