Io sono nel processo di apprendimento C++ e sono imbattuto in un articolo su MSDN qui:Che cosa utilizza Microsoft come tipo di dati per le stringhe Unicode?
http://msdn.microsoft.com/en-us/magazine/dd861344.aspx
Nel primo esempio di codice l'una riga di codice che la mia domanda riguarda è la seguente:
VERIFY(SetWindowText(L"Direct2D Sample"));
Più precisamente il prefisso L. Ho letto un po 'e correggo se ho torto :-), ma questo è per consentire stringhe unicode, cioè per preparare un set di caratteri lungo. Ora durante il mio leggere su questo mi sono imbattuto in un altro articolo sulle tecniche Adavnced stringa in C qui http://www.flipcode.com/archives/Advanced_String_Techniques_in_C-Part_I_Unicode.shtml
Si dice che ci sono un paio di opzioni, tra cui l'inserimento della testata:
#define UNICODE
O
#define _UNICODE
in C, ancora una volta indicare se ho torto, apprezzare il vostro feedback. Inoltre mostra il tipo di dati adatto per queste stringhe Unicode essere:
wchar_t
Si getta nella mischia una macro e una sorta di tipo di dati ibrida, la macro essere:
_TEXT(t)
che prefissi semplicemente la stringa con L e il tipo di dati ibrido come
TCHAR
che si sottolinea consentirà unicode se l'intestazione è lì e se non ASCII. Ora la mia domanda è, o più di un'aspirazione che vorrei confermare, Microsoft userebbe questo tipo di dati TCHAR che è più flessibile o c'è qualche vantaggio nell'impegnarsi ad usare wchar_t.
Anche quando dico che Microsoft usa questo, più specificamente per exmaple nelle librerie ATL e WTL, qualcuno di voi ha una preferenza o ha qualche consiglio in merito?
Cheers,
Andrew
Grazie per il feedback di tutti! Apprezzalo! :-) –