exponenta event banner

matlab::engine::convertUTF8StringToUTF16String

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

Описание

std::basic_string<char16_t> convertUTF8StringToUTF16String(const std::string& utf8string)

Преобразование строки UTF-8 в строку UTF-16. Эта функция используется для преобразования строк ASCII в matlab::engine::String строки, которые используются функциями MATLAB ® C++ Engine .

Включать

Пространство имен:

matlab::engine
ВключатьMatlabEngine.hpp

Параметры

const std::string& utf8string

Строка UTF-8

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

std::basic_string<char16_t>

Строка UTF-16

Исключения

matlab::engine::OutofMemoryException

Функции не удалось выделить память.

matlab::engine::TypeConversionException

Тип ввода не может быть преобразован в std::basic_string<char16_t>.

Примеры

Преобразовать строку

Преобразование строки UTF-8 в matlab::engine::String (UTF-16 строка).

std::u16string matlabStatement = convertUTF8StringToUTF16String("sRoot = sqrt(12.7);");

Альтернативное преобразование

При использовании компилятора C++, поддерживающего использование префикса «u» для создания UTF-16 кодированных строковых литералов, можно использовать этот подход для создания входов для функций движка. Например, этот код определяет переменную, которая содержит инструкцию MATLAB в качестве строки UTF-16.

std::u16string matlabStatement = u"sRoot = sqrt(12.7);";

Обновленный список поддерживаемых компиляторов см. на веб-сайте Поддерживаемые и совместимые компиляторы.

Представлен в R2017b