wchar не работает в VC++ 2005
wstring ws(L"Press 'q' to end.");
wcout << ws;
ошибка C2679: двоичный файл "<<": не найден оператор, который принимает правый операнд типа "std:: wstring" (или нет приемлемого преобразования)
Это в консольном приложении Win32 VC++ 2005, созданном с настройками по умолчанию... что, я думаю, означает, что UNICODE включен? Я только что узнал, что cout не поддерживает wstring, что немного уродливо - так ли это? Это приложение взаимодействует с библиотеками, которые возвращают wstrings, и это также может быть Unicode. Есть ли какие-то настройки проекта, которые мне нужно изменить?
1 ответ
Решение
Пытаться
wstring ws(L"Press 'q' to end.");
wcout << ws.c_str();
Кстати: wchar!= Wstring