C++/pragma 파일에 포함된 리터럴을 utf-8로 변경

<!> Visual Studio의 컴파일 방식에 따라서 소스 코드를 UTF-8로 작성하였다 하더라도 실행 파일에 포함된 리터럴은 실행 캐릭터 셋(execution character set)로 인코딩하여 컴파일 된다. 이것은 작성자의 의도한 바가 아닐 수 있다. 여기에 의해 다국어 처리할 때 문제가 발생할 수 있다.


Solution 1 #

C++11 지원 시.
문자열에 접두사 u8을 붙이는 것으로 문자 리터럴이 UTF-8임을 지정한다.
u8"hello"

Solution 2 #

소스 코드에 다음 코드를 사용하여 소스 코드 내 문자 리터럴이 UTF-8임을 지정한다.
#pragma execution_character_set("utf-8")

이 글에는 0 개의 댓글이 있습니다.