matlab:引擎::StreamBuffer
ストリムバッファの定義
説明
std:: basic_streambuf < char16_t >
の型定義。
例
この例では,MATLABEngine: eval
メンバ関数によるmatlab®関数の評価から出力を返すための,文字列バッファを定義します。この関数はmatlab:引擎::StreamBuffer
由来のバッファを使用して,matlabからの出力をc++に返します。
#include "MatlabEngine.hpp" #include "MatlabDataArray.hpp" #includeusing namespace matlab::engine;using SBuf = std::basic_stringbuf ;void printFromBuf(const std::shared_ptr buf){//从buf自动获取文本_ = buf->str();std::cout << "*" << convertUTF16StringToUTF8String(text_) << "*" << std::endl;} int main(){//创建数组工厂matlab::data::ArrayFactory工厂;//连接到命名共享的MATLAB会话为:// MATLAB -r " MATLAB .engine. shareengine ('myMatlabEngine')"字符串会话(u“myMatlabEngine”);std::unique_ptr matlabPtr = connectMATLAB(session);auto outBuf = std::make_shared ();auto errBuf = std::make_shared (); matlabPtr->eval(u"matlab.engine.engineName", outBuf, errBuf); printFromBuf(outBuf); printFromBuf(errBuf); return 0; }
バジョン履歴
R2017bで導入