从二进制文件中读取ublas向量或使用array []初始化它

时间:2013-04-25 09:29:46

标签: c++ boost ublas

为什么我不能以类似的方式从二进制文件中读取ublas向量(而不是一次只能读取一个元素):

boost::numeric::ublas::vector<double> floatVector(10);
myFile.read( (char *)&vector, 10 * sizeof(double));

有没有办法从数组中初始化ublas向量?

double d[10];

1 个答案:

答案 0 :(得分:0)

你可以使用这样的东西

   double array[] = {1., 2., 3.};
   boost::numeric::ublas::vector<double> v(sizeof(array) / sizeof(*array));
   std::copy(array, array + sizeof(array) / sizeof(*array), v.data().begin());