Вопрос

Позвольте сказать, что у меня есть этот фрагмент кода, который возвращает строку Unicode CLR с помощью кириллических букв

    property String^ EIDErrorDescriptionSr { 
       String^ get() 
       {
        switch(EIDErrorCode) 
        {
         case EID_OK: return "Операција успешно завршена";
...

Когда я читаю свойство в C # код, ссылаясь на эту сборку, я получаю кучу «?» Как будто компилятор C ++ «сплющен» строка в однобайтовые символы.

Я сохранил исходный файл C ++ как UTF-8 (даже Unicode), и я всегда получаю это предупреждение от компилятора для каждого символа Nonsi:

Предупреждение C4566: символ, представленный универсальным символом « U041E», не может быть представлен на текущей кодовой странице (1252)

Теперь есть ли компилятор, чтобы заставить компилятор для обработки литералов как Unicode? Я не могу найти один.

Это было полезно?

Решение

Попробуйте литерал строки Unicode: L"...".

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top