다음을 통해 공유


CStringT::CStringT

CStringT 개체를 생성합니다.

CStringT( ) throw() : 
   CThisSimpleString(
      StringTraits::GetDefaultManager()
   );

explicit CStringT(
   IAtlStringMgr* pStringMgr
) throw() : 
   CThisSimpleString(
      pStringMgr
   );

CStringT(
   const VARIANT& varSrc
);

CStringT(
   const VARIANT& varSrc,
   IAtlStringMgr* pStringMgr
);

CStringT( 
  const CStringT& strSrc
) : 
   CThisSimpleString( 
      strSrc
   );

operator CSimpleStringT<
   BaseType,
   !_CSTRING_IMPL_::_MFCDLLTraitsCheck<
      BaseType,
      StringTraits
   >::   c_bIsMFCDLLTraits 
> &()

template <
   bool bMFCDLL
>
CStringT(
   const CSimpleStringT<
      BaseType,
      bMFCDLL
   > & strSrc
) : 
   CThisSimpleString(
      strSrc
);

template <
   class SystemString
>
CStringT(
   SystemString^ pString
) : 
   CThisSimpleString(
      StringTraits::GetDefaultManager()
   );

CStringT(
   const XCHAR* pszSrc
) : 
   CThisSimpleString(
      StringTraits::GetDefaultManager()
   );

CSTRING_EXPLICIT CStringT(
   const YCHAR* pszSrc
) : 
   CThisSimpleString(
      StringTraits::GetDefaultManager()
   );

CStringT(
   LPCSTR pszSrc,
   IAtlStringMgr* pStringMgr
) : 
   CThisSimpleString(
      pStringMgr
   );

CStringT(
   LPCWSTR pszSrc,
   IAtlStringMgr* pStringMgr
) : 
   CThisSimpleString(
      pStringMgr
);

CSTRING_EXPLICIT CStringT(
   const unsigned char* pszSrc
) : 
   CThisSimpleString(
      StringTraits::GetDefaultManager()
   );

/*CSTRING_EXPLICIT*/ CStringT(
   char* pszSrc
) : 
   CThisSimpleString(
      StringTraits::GetDefaultManager()
   );

CSTRING_EXPLICIT CStringT(
   unsigned char* pszSrc
) : 
   CThisSimpleString(
      StringTraits::GetDefaultManager()
   );

CSTRING_EXPLICIT CStringT(
   wchar_t* pszSrc
) : 
   CThisSimpleString(
      StringTraits::GetDefaultManager()
   );

CStringT(
   const unsigned char* pszSrc,
   IAtlStringMgr* pStringMgr
) : 
   CThisSimpleString(
      pStringMgr
   );

CSTRING_EXPLICIT CStringT(
   char ch,
   int nLength = 1
) : 
   CThisSimpleString(
      StringTraits::GetDefaultManager()
   );

CSTRING_EXPLICIT CStringT(
   wchar_t ch,
   int nLength = 1
) : 
   CThisSimpleString(
      StringTraits::GetDefaultManager()
   );

CStringT(
   const XCHAR* pch,
   int nLength
) : 
   CThisSimpleString(
      pch,
      nLength,
      StringTraits::GetDefaultManager()
   );

CStringT(
   const YCHAR* pch,
   int nLength
) : 
   CThisSimpleString(
      StringTraits::GetDefaultManager()
   );

CStringT(
   const XCHAR* pch,
   int nLength,
   IAtlStringMgr* pStringMgr
) : 
   CThisSimpleString(
      pch,
      nLength,
      pStringMgr
);

CStringT(
   const YCHAR* pch,
   int nLength,
   IAtlStringMgr* pStringMgr
) : 
   CThisSimpleString(
      pStringMgr
   );

매개 변수

  • pch
    길이의 문자 배열에 대 한 포인터 nLength, null 종결 되지 않았습니다.

  • nLength
    문자 개수 pch.

  • ch
    단일 문자입니다.

  • pszSrc
    이것을 복사 하는 null로 끝나는 문자열 CStringT 개체입니다.

  • pStringMgr
    메모리 관리자에 대 한 포인터는 CStringT 개체입니다. 에 대 한 자세한 내용은 IAtlStringMgr 및 메모리 관리에 대 한 CStringT를 참조 하십시오 Memory Management with CStringT.

  • strSrc
    기존에 CStringT 로 복사할 개체 CStringT 개체입니다. 에 대 한 자세한 내용은 CThisStringCThisSimpleString, 설명 단원을 참조 하십시오.

  • varSrc
    Variant 개체를 복사할 수 CStringT 개체입니다.

  • BaseType
    문자 형식 문자열 클래스입니다. 다음 중 하나일 수 있습니다.

    char(ANSI 문자열에 대 한).

    wchar_t(유니코드 문자열에 대 한).

    TCHAR(ANSI와 유니코드 문자열에 대 한).

  • bMFCDLL
    프로젝트가 MFC DLL (TRUE) 인지 여부를 지정 하는 부울 값 (FALSE).

  • SystemString
    해야 System::String, 및 /clr 프로젝트를 컴파일해야 합니다.

  • pString
    핸들에는 CStringT 개체입니다.

설명

생성자에 할당 된 저장소를 새 입력된 데이터를 복사 하기 때문에 알고 있어야 메모리 예외 발생할. 참고 일부 이러한 생성자의 변환 기능으로 작동 합니다. 이렇게 하면 대체 하려면 예를 들어, 있습니다는 LPTSTR 위치는 CStringT 개체가 필요한 곳.

  • CStringT( LPCSTRlpsz ): 유니코드 생성 CStringT 에서 ANSI 문자열입니다. 이 생성자를 다음 예제와 같이 문자열 리소스가 로드 수도 있습니다.

  • CStringT( LPCWSTRlpsz): 생성 된 CStringT 에서 유니코드 문자열.

  • CStringT( const unsigned char*psz ): 생성할 수는 CStringT 에 대 한 포인터를 unsigned char.

참고

정의 _CSTRING_DISABLE_NARROW_WIDE_CONVERSION 사이의 암시적 문자열 변환 기능을 해제 하려면 매크로 ANSI 및 유니코드 문자열입니다.매크로 변환 지원 컴파일 생성자에서 제외 됩니다.

참고는 strSrc 매개 변수 수 하나는 CStringT 또는 CThisSimpleString 개체. 에 대 한 CStringT, 그 기본 인스턴스 중 하나를 사용 (CString, CStringA, 또는 CStringW). for CThisSimpleString, use a this pointer. CThisSimpleString인스턴스를 선언 된 CSimpleStringT Class, 작은 문자열 클래스 보다 기본 제공 기능이 있는 CStringT 클래스.

오버 로드 연산자 CSimpleStringT<>&() 생성 한 CStringT 에서 개체는 CSimpleStringT 선언.

참고

만들 수 있지만 CStringT 인스턴스가 포함 된 null 문자 포함에 대해 권장 합니다.호출 메서드 및 연산자에서 CStringT 포함 된 null 문자를 포함 하는 개체는 의도 하지 않은 결과 생성할 수 있습니다.

예제

// typedef CStringT<TCHAR, StrTraitATL<TCHAR, ChTraitsCRT<TCHAR>>> CAtlString;

CAtlString s1;                    // Empty string
CAtlString s2(_T("cat"));           // From a C string literal
CAtlString s3 = s2;               // Copy constructor
CAtlString s4(s2 + _T(" ") + s3);   // From a string expression

CAtlString s5(_T('x'));             // s5 = "x"
CAtlString s6(_T('x'), 6);          // s6 = "xxxxxx"

CAtlString s7((LPCSTR)ID_FILE_NEW); // s7 = "Create a new document"

VARIANT var;
V_VT(&var) = VT_BSTR;
V_BSTR(&var) = ::SysAllocString(L"Football is a fun sport.");
CAtlString s8(var); // s8 = "Football is a fun sport." 

// The following statement does not call the assignment operator. 
// The compiler considers the following statement equivalent to 
// CAtlString city("Paris")
CAtlString city = _T("Paris");   

요구 사항

헤더: cstringt.h

참고 항목

참조

CStringT Class

CSimpleStringT Class