아래의 구문에서 온라인으로 설명을 찾고이 포럼에서 L"을 (를) 찾는 것은 어려웠습니다. Qt5 내부에 여기에 붙여 넣기에 너무 긴 응용 프로그램을 디버깅하고 있습니다. 나는이 마지막 오류를 해결하려고 노력하고있어 -> return L ""; < -. 아래 함수의 마지막 줄 중 하나. '리턴': 내가 받고있어 컴파일러 오류가 ...전에이 구문을 본 적이 없습니까? 누군가가 설명 할 수 있습니까? ..... "L" "
C2440입니다 'LPWSTR'
내 첫 번째 질문이 무슨 뜻 무엇에 '[1] const를 wchar_t를'에서 변환 할 수 없습니다 - -> L ""< -?
마지막으로이 컴파일러 오류를 어떻게 해결할 수 있습니까? wchar_t를 [1] 1 바이트이며, LPWSTR 그것을 변환 할 수 없습니다의 2 바이트이기 때문에
LPWSTR ImageThread::getLastErrorString(DWORD lastError)
{
DWORD result = FormatMessage(
FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_IGNORE_INSERTS,
NULL,
lastError,
LANG_USER_DEFAULT,
errorString,
sizeof(errorString),
NULL);
if (result > 0)
{
return errorString;
}
else
{
return L"";
}
}
내 가정은 ??? 나는 이것이 중요한지 확실하지 않지만 Qt5의 툴바에서 또 다른 오류가 발생합니다. "오류 :"UTF-8 "인코딩을 사용하는"myfile.cpp "를 디코딩 할 수 없습니다."편집 할 수 없습니다. " 그것은 나에게 인코딩을 선택하는 옵션을 제공합니다. Qt5를 사용하여이 코드를 모두 다시 작성했기 때문에이 코드가 이전 버전의 Qt로 작성 되었기 때문에 이것이 확실하다고 생각합니다. 다시 말하지만, 위의 두 가지 질문과 관련이 있는지는 확실하지 않지만, 진행 상황에 대한 전체 그림을 그려야했습니다.
이 포럼의 L ""에 대한 검색은 결과를 제공하지 않습니다 ._SO는 ** 아니 ** 포럼입니다! 업데이트 : _ 내 가정은 wchar_t [1]이 1 바이트이고 LPWSTR이 2 바이트이므로 변환 할 수 없습니다. 어떻게'wchar_t [1] '이 1 바이트라는 결론을 내렸습니까? 또는'LPWSTR'은 2 바이트입니까? 일반적으로, 컴파일러는'L ' "''const'에 대해 불평하고, 여러분의 함수는 non-'const' 값을 반환합니다. –
http://stackoverflow.com/questions/6384118/what-does-the-l-in-front-a-string-mean-in-c – AlexanderVX
오류에 관해 말할 수는 없지만 다음 내용을 읽을 수 있습니다. "L" "과 같은 문자열 리터럴 접두사 접두사 : http : //en.cppreference.com/w/cpp/language/string_literal – HolyBlackCat