istringstream を使う。出力形式と同じ形式の文字列からベクトルと行列を生成することが出来る。
#include <boost/numeric/ublas/vector.hpp>
#include <boost/numeric/ublas/io.hpp>
#include <iostream>
int main () {
using namespace boost::numeric;
using namespace std;
ublas::vector<double> v;
istringstream is("[3] (0.1, 2, 2)");
is >> v;
cout << v << endl;
}
$./a.out [3](0.1,2,2)
最近のコメント