다음을 통해 공유


CFixedStringT 클래스

이 클래스는 고정 문자 버퍼가 있는 문자열 개체를 나타냅니다.

구문

template<class StringType, int t_nChars>
class CFixedStringT : private CFixedStringMgr, public StringType

매개 변수

StringType
고정 문자열 개체의 기본 클래스로 사용되며 모든 CStringT기반 형식일 수 있습니다. 몇 가지 예는 CString, CStringACStringW.

t_nChars
버퍼에 저장된 문자 수입니다.

멤버

공용 생성자

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

Public 연산자

이름 설명
CFixedStringT::operator = 개체에 새 값을 CFixedStringT 할당합니다.

설명

이 클래스는 을 기반으로 하는 사용자 지정 문자열 클래스의 예입니다 CStringT. 비슷하지만 두 클래스의 구현은 다릅니다. 주요 차이점은 다음과 같습니다.CFixedStringTCStringT

  • 초기 문자 버퍼는 개체의 일부로 할당되며 크기 가 t_nChars. 이렇게 하면 개체가 CFixedString 성능을 위해 연속 메모리 청크를 차지할 수 있습니다. 그러나 개체의 CFixedStringT 내용이 t_nChars 이상으로 커지면 버퍼가 동적으로 할당됩니다.

  • 개체의 CFixedStringT 문자 버퍼는 항상 길이가 같습니다( t_nChars). 개체의 버퍼 크기에 CStringT 는 제한이 없습니다.

  • 둘 이상의 CFixedStringT 개체 간에 CStringData 개체를 공유할 수 없도록 메모리 관리자 CFixedStringT 가 사용자 지정됩니다. CStringT 개체에는 이 제한이 없습니다.

일반적으로 문자열 개체의 CFixedStringT 사용자 지정 및 메모리 관리에 대한 자세한 내용은 메모리 관리 및 CStringT를 참조하세요.

상속 계층 구조

IAtlStringMgr

StringType

CFixedStringMgr

CFixedStringT

요구 사항

헤더: cstringt.h

CFixedStringT::CFixedStringT

CFixedStringT 개체를 생성합니다.

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);

매개 변수

pszSrc
CFixedStringT 개체에 복사할 null로 끝나는 문자열입니다.

strSrc
CFixedStringT 개체에 복사할 기존 CFixedStringT 개체입니다.

pStringMgr
개체의 메모리 관리자에 대한 포인터입니다 CFixedStringT . 메모리 관리 및 메모리 IAtlStringMgr 관리에 대한 CFixedStringT자세한 내용은 메모리 관리 및 CStringT를 참조하세요.

설명

생성자는 입력 데이터를 새 할당된 스토리지에 복사하므로 메모리 예외가 발생할 수 있음을 알고 있어야 합니다. 이러한 생성자 중 일부는 변환 함수 역할을 합니다.

CFixedStringT::operator =

새 데이터를 사용하여 기존 개체를 CFixedStringT 다시 초기화합니다.

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);

매개 변수

pszSrc
CFixedStringT 개체에 복사할 null로 끝나는 문자열입니다.

strSrc
CFixedStringT 개체에 복사할 기존 CFixedStringT 개체입니다.

설명

새 스토리지가 결과 CFixedStringT 개체를 보유하도록 할당되는 경우가 많기 때문에 대입 연산자를 사용할 때마다 메모리 예외가 발생할 수 있습니다.

참고 항목

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