matlab::cpplib::convertUTF8StringToUTF16String
UTF-8 文字列を UTF-16 文字列に変換
説明
std::u16string & ustr convertUTF8StringToUTF16String(const std::string & str)
UTF-8 文字列 (ASCII または Unicode®) を UTF-16 文字列に変換します。この関数は、ASCII 文字列を起動オプション (initMATLABApplication に渡される) を表現するために必要な形式、関数名、または matlab::data::array に変換するために使用します。
リテラル文字列をパラメーターとして渡すときは、リテラルの char * 文字列に接頭辞 u を付けることで、より簡潔に convertUTF8StringToUTF16String と同じ効果が得られます。たとえば、長い initMATLABLibrary(app, convertUTF8StringToUTF16String("mylib")); の代わりに、initMATLABLibrary(app, u"mylib"); と記述して同じ結果が得られます。
メモ
接頭辞 u の使用は Visual C++® 2013 ではサポートされていません。
パラメーター
const std::string & str | UTF-8 (通常は ASCII) 文字列。 |
戻り値
| UTF-16 でエンコードされた文字列。 |
例外
| 入力が有効な 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 で導入
参考
matlab::cpplib::convertUTF16StringToUTF8String | matlab::cpplib::initMATLABApplication | matlab::cpplib::runMain | matlab::cpplib::initMATLABLibrary | matlab::cpplib::initMATLABLibraryAsync | matlab::cpplib::MATLABLibrary::feval | matlab::cpplib::MATLABLibrary::fevalAsync | matlab::cpplib::MATLABLibrary::waitForFiguresToClose