C++/MFC

[MFC] C++ 컴파일러 오류 C2664 두가지 해결방법

balabala 2021. 8. 20. 22:14
728x90
SMALL

그림1. C2664 에러 코드

1. _T("") 매크로 혹은 L"" 사용

다음과 같은 C2664에러는 다음과 같은 방법으로 수정하면 정상적으로 컴파일이 수행된다. 단, 모든 문자열 구문에 삽입해야 한다는 단점이 존재한다.

 

그림2. _T() 매크로 사용
그림3. L"" 사용

※ 관련 자료 

https://docs.microsoft.com/ko-kr/cpp/text/unicode-programming-summary?view=msvc-160 

 

유니코드 프로그래밍 요약

자세한 정보: 유니코드 프로그래밍 요약

docs.microsoft.com

SMALL
2. 속성 변경(멀티 바이트 문자 집합 사용)

위 방법은 모든 문자열 구문에 삽입해야 한다는 단점이 있으므로, 다음과 같이 프로젝트의 속성 변경을 통해 번거로운 작업을 없앨 수 있다. 

 

1.  설루션 탐색기 or 상단 프로젝트에 있는 속성 창을 활성화

그림4. 솔루션 탐색기 이용하여 속성 창 열기
그림5. 상단 프로젝트 이용하여 속성 창 열기

2. 고급 탭 → 문자 집합 → 멀티 바이트 문자 집합 사용 클릭 → 적용 순으로 버튼 누르기

그림6. 속성 변경 순서

728x90
LIST