2009-12-01 4 views

답변

9

당신은 하나를 정의 할 수 있습니다 :

typedef std::basic_string<TCHAR> mystring; 
... 
mystring test = _T("Hello World!"); 
+0

당신도 새로운 특성을해야겠습니까? – GManNickG

+8

AFAIK'TCHAR'은'char' 또는'wchar_t'입니다. 이 표준은 두 가지 유형의 특성화를 제공합니다. – AraK

+0

GMan : tstring은 문자열 또는 wstring의 별칭이됩니다.이 문자열은 각각 basic \ _string 및 basic \ _string 의 typedef입니다. –

4

또 다른 옵션 (windows.h을 필요로하지 않습니다) :

#if defined(_UNICODE) || defined(UNICODE) 
    typedef std::wstring ustring_t; 
    typedef wchar_t uchar_t; 
    #define TEXT(x) (L##x) 
#else 
    typedef std::string ustring_t; 
    typedef char uchar_t; 
    #define TEXT(x) (x) 
#endif 

사용법 :

ustring_t mystr = TEXT("hello world"); 
+3

@Downvoter : 관심 주시면 고맙겠습니다. 어느 비트와 동의하지 않습니까? –

+1

downvoter가 아니고''이 없으면'TEXT()'매크로도 없다. – MSalters

+0

'TEXT' 매크로 정의가 추가되었습니다. –

관련 문제