Comment utiliser CA2W de manière incorrecte?
Question
S'il vous plaît, quelqu'un pourrait-il expliquer pourquoi cela ne fonctionne pas?
char *test = "test";
_TCHAR *szTest = CA2W(test);
Et dites-moi ce que je devrais faire à la place, s'il vous plaît.
Au lieu de me donner le même texte, cela me donne:
La solution
Selon MSDN, c'est mauvais. J'ai donc utilisé cela à la place:
char *test = "test";
CA2W szTest(test);
À partir de là, nous pouvons obtenir un type LPWSTR si nous voulons vraiment:
LPWSTR test = szTest.m_psz;
Il semble également préférable d’utiliser LPWSTR au lieu de _TCHAR * - mais je ne suis pas sûr (je pense que c’est essentiellement la même chose, mais cela pourrait être faux).
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow