Я стремлюсь создать std::vector<std::string>
с именами на фарси. Но как только я скомпилирую это, я получаю эту ошибку:
Это похоже на проблему с Unicode. Любые предложения, как это исправить?
Microsoft Visual C ++ компилятор поддерживает файлы с исходным кодом Unicode. В частности, он принимает UTF-8, (знак порядка байтов требуется) или UTF-16:
Файлы исходного кода
Символы Unicode теперь поддерживаются в идентификаторах, макросах, строковых и символьных литералах и в комментариях. Также поддерживаются универсальные имена персонажей.
Unicode может быть введен в файл исходного кода в следующих кодировках:
UTF-16 с прямым порядком байтов с или без метки порядка байтов (BOM)
UTF-16 с прямым порядком байтов с или без спецификации
UTF-8 с спецификацией
В частности, обратите внимание, что для UTF-8 требуется метка порядка байтов. Диалоговое окно на снимке экрана представляет собой редактор Visual Studio, который обнаруживает, что вы ввели не-ASCII-символы, и спрашивает вас, хотите ли вы преобразовать файл исходного кода в UTF-8 или UTF-16 (не уверен, что по умолчанию, но я буду угадывать UTF-8). Если вы нажмете «Да», файл сохранится с меткой порядка байтов UTF-8 (BOM), и все должно быть в порядке.
Других решений пока нет …