다음을 통해 공유


CStrBufT 클래스

이 클래스는 기존 CStringT 개체에 대한 GetBufferReleaseBuffer 자동 리소스 클린 및 호출을 제공합니다.

구문

template<typename TCharType>
class CStrBufT

매개 변수

TCharType
클래스의 문자 형식입니다 CStrBufT . 다음 중 하나일 수 있습니다.

  • char (ANSI 문자 문자열의 경우)

  • wchar_t (유니코드 문자열의 경우)

  • TCHAR (ANSI 및 유니코드 문자열 모두)

멤버

공용 Typedefs

이름 설명
PCXSTR 상수 문자열에 대한 포인터입니다.
PXSTR 문자열에 대한 포인터입니다.
StringType 이 클래스 템플릿의 특수화로 버퍼를 조작할 문자열 형식입니다.

공용 생성자

속성 설명
CStrBufT::CStrBufT 문자열 버퍼 개체의 생성자입니다.

공용 메서드

이름 설명
CStrBufT::SetLength 연결된 문자열 개체의 문자 버퍼 길이를 설정합니다.

Public 연산자

이름 설명
CStrBufT::operator PCXSTR const 연결된 문자열 개체의 문자 버퍼에 대한 포인터를 검색합니다.
CStrBufT::operator PXSTR 연결된 문자열 개체의 문자 버퍼에 대한 포인터를 검색합니다.

공용 상수

이름 설명
CStrBufT::AUTO_LENGTH 릴리스 시 문자열의 새 길이를 자동으로 결정합니다.
CStrBufT::SET_LENGTH GetBuffer 시간에 문자열 개체의 길이 설정

설명

이 클래스는 GetBuffer 및 ReleaseBuffer 또는 GetBufferSetLengthReleaseBuffer에 대한 호출을 바꾸기 위한 래퍼 클래스로 사용됩니다.

주로 도우미 클래스 CStrBufT 로 설계된 개발자는 호출 ReleaseBuffer방법이나 시기에 대해 걱정하지 않고 문자열 개체의 문자 버퍼로 작업할 수 있는 편리한 방법을 제공합니다. 이는 예외 또는 여러 종료 코드 경로의 경우 래퍼 개체가 자연스럽게 범위를 벗어나기 때문일 수 있습니다. 으로 인해 소멸자가 문자열 리소스를 해제합니다.

요구 사항

헤더: atlsimpstr.h

CStrBufT::AUTO_LENGTH

릴리스 시 문자열의 새 길이를 자동으로 결정합니다.

static const DWORD AUTO_LENGTH = 0x01;

설명

릴리스 시 문자열의 새 길이를 자동으로 결정합니다. 문자열은 null로 종료되어야 합니다.

CStrBufT::CStrBufT

버퍼 개체를 생성합니다.

CStrBufT(StringType& str, int nMinLength, DWORD dwFlags = AUTO_LENGTH) throw(...);
explicit CStrBufT(StringType& str) throw(...);

매개 변수

str
버퍼와 연결된 문자열 개체입니다. 일반적으로 개발자는 (TCHAR 변형), CStrBufA (variant) 및 CStrBufW (wchar_tvariant)의 CStrBuf 미리 정의된 typedefs를char 사용합니다.

nMinLength
문자 버퍼의 최소 길이입니다.

dwFlags
문자열 길이가 자동으로 결정되는지 여부를 결정합니다. 다음 중 하나일 수 있습니다.

  • AUTO_LENGTH 문자열 길이는 CSimpleStringT::Release가 호출될 때 자동으로 결정됩니다. 문자열은 null로 종료되어야 합니다. 기본값입니다.

  • SET_LENGTH 문자열 길이는 CSimpleStringT::GetBuffer가 호출되면 설정됩니다.

설명

연결된 문자열 개체에 대한 문자열 버퍼를 만듭니다. 생성 중에 CSimpleStringT::GetBuffer 또는 CSimpleStringT::GetBufferSetLength 가 호출됩니다.

복사 생성자는 .입니다 private.

CStrBufT::operator PCXSTR

연결된 문자열 개체에 저장된 문자를 C 스타일 문자열로 직접 액세스합니다.

operator PCXSTR() const throw();

Return Value

문자열의 데이터에 대한 문자 포인터입니다.

설명

문자열 개체의 문자 버퍼에 대한 포인터를 반환하려면 이 함수를 호출합니다. 이 포인터를 사용하여 문자열 개체의 내용을 변경할 수 없습니다.

CStrBufT::operator PXSTR

연결된 문자열 개체에 저장된 문자를 C 스타일 문자열로 직접 액세스합니다.

operator PXSTR() throw();

Return Value

문자열의 데이터에 대한 문자 포인터입니다.

설명

문자열 개체의 문자 버퍼에 대한 포인터를 반환하려면 이 함수를 호출합니다. 개발자는 이 포인터를 사용하여 문자열 개체의 내용을 변경할 수 있습니다.

CStrBufT::P CXSTR

상수 문자열에 대한 포인터입니다.

typedef CSimpleStringT<TCharType>::PCXSTR PCXSTR;

CStrBufT::P XSTR

문자열에 대한 포인터입니다.

typedef CSimpleStringT<TCharType>::PXSTR PXSTR;

CStrBufT::SET_LENGTH

문자열 개체의 길이를 지정합니다 GetBuffer .

static const DWORD SET_LENGTH = 0x02;

설명

GetBuffer 시간에 문자열 개체의 길이를 설정합니다.

문자열 버퍼 개체가 생성될 때 CSimpleStringT::GetBuffer 및 CSimpleStringT::GetBufferSetLength가 호출되는지 여부를 확인합니다.

CStrBufT::SetLength

문자 버퍼의 길이를 설정합니다.

void SetLength(int nLength);

매개 변수

nLength
문자열 개체의 문자 버퍼의 새 길이입니다.

참고 항목

의 생성자에 CStrBufT지정된 최소 버퍼 길이보다 작거나 같아야 합니다.

설명

버퍼 개체가 나타내는 문자열의 길이를 설정하려면 이 함수를 호출합니다.

CStrBufT::StringType

이 클래스 템플릿의 특수화로 버퍼를 조작할 문자열 형식입니다.

typedef CSimpleStringT<TCharType> StringType;

설명

TCharType 는 클래스 템플릿을 특수화하기 위해 사용되는 문자 형식입니다.

참고 항목

계층 구조 차트
ATL/MFC 공유 클래스