yo estoy en el proceso de aprendizaje de C++ y encontré un artículo sobre el MSDN aquí:¿Qué usa Microsoft como tipo de datos para cadenas Unicode?
http://msdn.microsoft.com/en-us/magazine/dd861344.aspx
En el primer ejemplo de código de la una sola línea de código que mi pregunta se refiere a es la siguiente:
VERIFY(SetWindowText(L"Direct2D Sample"));
Más específicamente ese prefijo L. He leído un poco y me corrijo si estoy equivocado :-), pero esto es para permitir cadenas de caracteres unicode, es decir, para preparar un juego de caracteres largo. Ahora en durante mi leer sobre esta me encontré con otro artículo sobre Técnicas Adavnced cadena en C aquí http://www.flipcode.com/archives/Advanced_String_Techniques_in_C-Part_I_Unicode.shtml
Se dice que hay un par de opciones, entre ellas la inclusión de la cabecera:
#define UNICODE
O
#define _UNICODE
en C, una vez más señalo si estoy equivocado, agradezco sus comentarios. Además se muestra el tipo de datos adecuado por ser estas cadenas Unicode:
wchar_t
Se arroja al mezclar una macro y una especie de tipo de datos híbrido, el ser macro:
_TEXT(t)
que simplemente se antepone la cadena con la L y el tipo de datos híbrida como
TCHAR
la cual recuerda que permitirá unicode si la cabecera está ahí y si no ASCII. Ahora mi pregunta es, o más de una suposición que me gustaría confirmar, que Microsoft usaría este tipo de datos TCHAR que es más flexible o que hay algún beneficio al comprometerse a usar el wchar_t.
También cuando digo que Microsoft usa esto, más específicamente para exmaple en las bibliotecas ATL y WTL, ¿alguien de ustedes tiene preferencia o tiene algún consejo al respecto?
Saludos,
Andrew
Gracias por la respuesta de todos. ¡Lo aprecio! :-) –