Дело в том, что скомпилированная MinGW программа имеет проблемы с печатью не-ascii символов на консоли через wcout, вывод может отображать символы из другой кодовой страницы или быть полностью пустым. Но винапи WriteConsoleW
работает отлично. Поэтому я спрашиваю, есть ли возможность изменить поведение << оператор, так что он всегда вызывает метод winapi.
(Я не нашел примеров того, как это сделать, и я новичок в c ++, есть много примеров, как перегрузить объект, но не как сделать это со строкой или широким массивом символов.)
Вы можете создать подходящий потоковый буфер для отправки символов туда, куда вам нужно их отправить. Ты можешь использовать rdbuf()
установить буфер потока, используемый std::wcout
, Я не думаю, что я привел пример использования wchar_t
как тип персонажа в прошлом, но это будет работать так же, как множество примеров для char
,
Других решений пока нет …