У нас есть система комментариев, встроенная в наш движок, которая позволяет программистам размещать комментарии для различных открытых переменных / объектов, которые затем используются интерфейсом GUI для подсказок и помощи.
В последнее время некоторые всплывающие подсказки начали давать сбои, и по прошествии большого количества времени я отследил их до символа: ’
, который, если я не ошибаюсь, является символом юникода и недоступен в ASCII.
Принимая во внимание этот ответ , я предположил, что wstring
решит проблему. Прежде чем вносить изменения в более крупный проект, я создал тестовый проект, чтобы посмотреть, решит ли wstring
проблему. Хотя проект не падает, его поведение не соответствует ожидаемому для wstring
.
#include <iostream>
#include <string>
using namespace std;
int main()
{
string someString = "successive attack that DOESN’T result";
wstring someWString = L"successive attack that DOESN’T result";
cout << someString << endl;
wcout << someWString << endl;
return 0;
}
//Console Output//
successive attack that DOESNÆT result
successive attack that DOESNPress any key to continue . . .
Я прочитал эту статью довольно давно и подумал, что понял проблемы, связанные с наборами символов, но, очевидно, это не так. Я был бы признателен за решение этой проблемы, а также за хорошее объяснение того, что происходит и как избежать подобных проблем в будущем.