我有std::vector<double> param(n + n * n) 长度,我需要将最后 (n * n) 个元素移动到 MatrixXd。我是这样做的:
MatrixXd cov(n, n);
for(int i = 0 ; i < n ; ++i) {
for(int c = 0 ; c < n ; ++c) {
cov(i, c) = param(n + i * n + c);
}
}
Run Code Online (Sandbox Code Playgroud)
有更好的方法吗?
编辑:更好意味着更快;)