LPWSTR
/WCHAR
대신 LPTSTR
/TCHAR
유형 등을 사용하는 방법에 대한 조언을 볼 수 있습니다. 나는 유니 코드가 Win2k에서 잘 소개되었다고 생각하며 솔직히 Windows 98 용 코드를 작성하지 않습니다. (물론 특수한 경우는 제외하고) Windows 98 (또는 ME)이 10 년 이상 된 OS에 대해 신경 쓰지 않는다면 호환성을 사용할 이유가 있습니까? TCHAR
등의 유형이 있습니까? 왜 여전히 사람들에게 TCHAR
을 사용하도록 조언하는가? WCHAR
을 직접 사용하면 어떤 이점이 있습니까?* Win32 API 호출은 여전히 관련이 있습니까?
답변
사람이 char
대신 wchar_t
또는 TCHAR
또는 WCHAR
이, 당신은 더 나은 비 유니 코드는 Win32 API에 대처하기 위해 준비했다의를 사용하여 선언 듬뿍, 비 _UNICODE C++의 100 개 라인에 걸어 할 것을 요구하면. 대규모로 전환하는 것은 비용이 많이 들며 출처 - 돈을 지불 할 준비가되어 있지 않을 수도 있습니다. 새로운 코드로
는, 음, 잘라 내기 및 붙여 넣기 쉽게 할 수 TCHAR을 사용하여 거기에 너무 많은 예제 코드가, 그리고 wchar_t
및 unsigned short
등 WCHAR
로 WCHAR
사이에 마찰이 어떤 경우가있다.
MS는 TCHAR에 UTF-32 데이터 형식을 추가 할 예정입니다.
TCHAR 확장 가능성에 대한 흥미로운 점. UTF-32는 실제 텍스트의 거의 모든 부분에 상당히 많은 공간을 차지할 것으로 보입니다. HTML5는이를 인코딩으로 완전히 거부합니다. – kibibu
@kib UTF-32 코멘트는 유머러스하기로되어 있습니다. – bmargulies
@bmargulies 죄송합니다./ – kibibu
실제로 유니 코드 버전의 기능은 Windows NT 3.1이 설치된 1993 년 Win32에서 도입되었습니다. 사실, NT 기반 오아시스에서는 거의 모든 * A 함수가 유니 코드로 변환하고 내부적으로 * W 버전을 호출합니다. 또한 9x에서 * W 기능에 대한 지원은 Microsoft Layer for Unicode을 통해 존재합니다.
새 프로그램의 경우 TCHAR 매크로 또는 WCHAR을 직접 사용하는 것이 좋습니다. 나는 MS가 NT의 평생 동안 다른 캐릭터의 크기에 대한 지원을 추가하는 것을 의심한다. 기존 코드베이스의 경우 유니 코드를 지원하는 것이 얼마나 중요한지에 달려 있다고 생각합니다. * A 함수는 이전 버전과의 호환성을 위해 Win32에 영원히 머무를 필요가 있습니다.
- 1. 동적 데이터 교환 (DDE) - 여전히 관련이 있습니까?
- 2. 원격 프로 시저 호출은 웹 서비스와 어떤 관련이 있습니까?
- 3. Win32 API 프로그래밍 - 가치가 있습니까?
- 4. CORBA/RMI 및 (D) COM은 오늘날에도 여전히 관련이 있습니까?
- 5. DBCP (Apache Commons Database Connection Pooling)는 여전히 관련이 있습니까?
- 6. GDI + 2001 from books : 구식이거나 여전히 관련이 있습니까?
- 7. Win32 API 도구 창
- 8. Process.BeginOutputReadLine에 대한 win32 api
- 9. Win32 Crypto API 사용
- 10. CultureInfo.TwoLetterISOLanguageName의 C++ Win32 API
- 11. Perl Win32 :: API() function
- 12. Gui의 Win32 API
- 13. Webkit을 Win32 API 컨트롤로
- 14. Win32 API 메서드
- 15. CRT 및 WIN32 API
- 16. CreateWindow() [Win32 API] : 부모 창만이
- 17. 어셈블리에서 Windows API 호출은 프로그램 크기를 최소화하면서
- 18. Win32 API 콘솔 프로그래밍 C
- 19. 벌집에서 "라이트 아웃 모드"를 수행하는 API 호출은 어디에 있습니까?
- 20. Java에서 Win32 API 메소드 호출
- 21. VS2010 C++ Win32 API intellisense
- 22. utfcpp 및 Win32 와이드 API
- 23. Zend는 PHP와 관련이 있습니까? jQuery는 javascript와 관련이 있습니까?
- 24. Win32 API 함수에서 디버그 중단
- 25. [C#] [Win32 API] PostMessage 도움말?
- 26. C++ - Win32 API, GUI stuff
- 27. 여러 창 처리하기 WIN32 API
- 28. 모뎀이 응답하지 않습니다. win32 api
- 29. Win32 API - Ctrl + Ctrl C
- 30. JavaScript '통화'란 무엇이며 효율성과 어떤 관련이 있습니까?
http://stackoverflow.com/questions/234365/is-tchar-still-relevant와 유사 – dan04
나는 개발자들이'TCHAR'을 사용하여 제안하는 것을 보지 못했습니다. 그러나 나는 일관성있는 제안을하는 개발자를 보았습니다. 제네릭 API 버전 (예 :'CreateFile')을 호출하면 일관성이 있어야하며 'LPCTSTR'을 전달해야합니다. 그것들을 혼란스럽게하지 않으시겠습니까? – IInspectable