Переносимое преобразование std :: string в std :: wstring и наоборот?

Мне нужно конвертировать std :: string в std :: wstring. Я использовал кое-что в следующих строках Visual Studio 2010 (и это работает нормально):

std::wstring_convert<std::codecvt_utf8_utf16<wchar_t>> converter;
std::string narrow = converter.to_bytes(wide_utf16_source_string);
std::wstring wide = converter.from_bytes(narrow_utf8_source_string);

Тем не менее, когда я строю его на gcc 4.3.4Дает ошибку:

  .cxx:333: error: 'wstring_convert' is not a member of 'std'
.cxx:333: error: 'codecvt_utf8_utf16' is not a member of 'std'

Может кто-нибудь, пожалуйста, предоставьте мне какой-нибудь способ сделать это преобразование независимым от платформы способом.

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …