以下代码将string
转换为wstring
,我需要调用我正在使用的词干提取方法。但是,我存储词干词的map
已满strings
。我查看了SO上的一些解决方案,从wstring
到string
的许多转换都是大约十几行代码。 有没有办法快速(最好是内联或类似)从string
转换为wstring
并返回?
string ANSIWord("documentation");
wchar_t* UnicodeTextBuffer = new wchar_t[ANSIWord.length()+1];
wmemset(UnicodeTextBuffer, 0, ANSIWord.length()+1);
mbstowcs(UnicodeTextBuffer, ANSIWord.c_str(), ANSIWord.length());
wWord = UnicodeTextBuffer;
否则,我会考虑将我的map
和其他方法转换为使用wstring
。
修改
顿悟:我决定将整个转换方法转换放在自己的方法中,从而将其减少到所需的一行。但是,我仍然想知道出于好奇/将来的参考。
答案 0 :(得分:0)
为什么不编写一个包含大约12行代码进行转换的函数,然后调用该函数?