matlab::cpplib::convertUTF8StringToUTF16String

Преобразуйте UTF-8 строку в UTF-16 строку

Описание

std::u16string & ustr convertUTF8StringToUTF16String(const std::string & str)

Преобразуйте UTF-8 строку (ASCII или Юникод®) на UTF-16 строку. Используйте эту функцию для преобразования строк ASCII в форму, необходимую для представления опций запуска (переданных в initMATLABApplication), или имена функции или matlab::data::array.

Система префиксации u в буквальный char * строка является более краткой альтернативой, которая достигает того же эффекта, что и convertUTF8StringToUTF16String когда буквальная строка передается как параметр. Например, можно было бы писать initMATLABLibrary(app, u"mylib"); вместо более длинного initMATLABLibrary(app, convertUTF8StringToUTF16String("mylib")); и получите те же результаты.

Примечание

Система префиксации u не поддерживается Visual C++® 2013.

Параметры

const std::string & str

A UTF-8 строка (возможно, ASCII).

Возвращаемое значение

std::u16string

A UTF-16-encoded строка.

Исключения

std::range_error

Вход не является допустимой строкой UTF-8.

Примеры

Преобразуйте UTF-8 строку в UTF-16 строку

auto app = initMATLABApplication(MATLABApplicationMode::IN_PROCESS);
const char * libName = getLibNameFromConfigFile(); // imaginary user-defined function
auto mylib = initMATLABLibrary(app, convertUTF8StringToUTF16String(libName));
Введенный в R2018a