Share via


CSimpleStringT::GetBufferSetLength

내부 문자 버퍼에 대 한 포인터를 반환 된 CSimpleStringT 개체에서 잘림 또는 필요한 경우 지정 된 길이 맞게 정확 하 게 성장 하는 길이 nLength.

PXSTR GetBufferSetLength(
   int nLength
);

매개 변수

  • nLength
    정확한 크기는 CSimpleStringT 문자 버퍼에서 문자.

반환 값

A PXSTR 개체의 문자 (null로 끝나는) 버퍼에 대 한 포인터입니다.

설명

내부 버퍼의 지정 된 길이의 가져오려면이 메서드를 호출 하 여 CSimpleStringT 개체입니다.반환 되는 PXSTR 포인터가 아닌 const 따라서 직접 수정할 수 있도록 하 고 CSimpleStringT 내용.

반환한 포인터를 사용 하는 경우 GetBufferSetLength 문자열의 내용을 변경 하려면 호출 ReleaseBuffer 의 내부 상태를 업데이트 하려면 CsimpleStringT 기타를 사용 하기 전에 CSimpleStringT 방법.

반환 주소 GetBufferSetLength 를 호출 하면 사용할 수 없습니다 ReleaseBuffer 때문에 추가 CSimpleStringT 작업이 발생할 수 있습니다는 CSimpleStringT 버퍼를 다시 할당 합니다.버퍼의 길이 변경 하지 않으면 다시 할당 되는 CSimpleStringT.

버퍼 메모리를 자동으로 해제 시기는 CSimpleStringT 개체는 소멸 됩니다.

없는 문자열 길이 자신을 추적 하는 경우 종료 null 문자를 추가 하지 마십시오.버퍼를 사용 하 여 놓을 때 최종 문자열 길이 지정 해야 ReleaseBuffer.호출 하면 null 종결 문자를 추가 하지 경우 ReleaseBuffer, 길이? 1 (기본값)를 전달할 ReleaseBuffer, 및 ReleaseBuffer 수행 됩니다는 strlen 에서 버퍼의 길이 결정 합니다.

참조 횟수에 대 한 자세한 내용은 다음 문서를 참조 하십시오.

예제

다음 예제는 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);   

요구 사항

헤더: atlsimpstr.h

참고 항목

참조

CSimpleStringT 클래스

CSimpleStringT::GetBuffer

CSimpleStringT::ReleaseBuffer