Format(); 함수는 문자열 리터럴과 int를 CString 변수로 결합합니다. 나는이 일을 여러 가지 방법을 시도, 그들에 대한 코드는 여기에 있습니다 :C++에서 형식 변환 중 오류가 발생했습니다.
// declare variables used
CString _CString;
int _int;
// try to use format function with string literal
_CString.Format("text",_int);
// try to use format function with C-Style cast
_CString.Format((wchar_t)"text",_int);
// try to use format function with static_cast
_CString.Format(static_cast<wchar_t>("text"),_int);
첫 번째 오류 C2664를 반환 '무효 ATL :: CStringT :: 형식 (CONST의 wchar_t *, ...)를' : 매개 변수 1을 'const char [33]'에서 'const wchar_t *'로 변환 할 수 없습니다.
두 번째로 오류는 없지만 한자로 텍스트가 표시됩니다.
세번째는 오류 C2440를 반환 'static_cast'* s의 wchar_t를 위해 CStrings 변환하는 '은 wchar_t'
상관 아이디어 'CONST CHAR [33]으로 변환 할 수 있습니까?
감사
이것은 매우 궁합이 좋지만 기술적으로 말하면 밑줄에 대문자가 오는 이름을 변수 이름으로 사용하지 않아야합니다. 그 이름들은 (악의적 인 악의적 인 매크로를 포함하여) 그들이 사용하는 어떤 용도로든 구현에 의해 예약됩니다. 나는 이것을 FYI로 언급 할 것이라고 생각했다. – templatetypedef