gpt4 book ai didi

c++ - 填充 boost vector 或矩阵

转载 作者:可可西里 更新时间:2023-11-01 18:09:57 25 4
gpt4 key购买 nike

是否有一种单一表达式方法可以将标量分配给 boost 矩阵或 vector 的所有元素?我试图找到一种更紧凑的表示方式:

boost::numeric::ublas::c_vector<float, N> v;
for (size_t i=0; i<N; i++) {
v[i] = myScalar;
}

以下不起作用:

boost::numeric::ublas::c_vector<float, N> 
v(myScalar, myScalar, ...and so on..., myScalar);

boost::numeric::ublas::c_vector<float, N> v;
v = myScalar;

最佳答案

因为 vector 模型是一个标准的随机访问容器,所以您应该能够使用标准的 STL 算法。像这样的东西:

c_vector<float,N> vec;
std::fill_n(vec.begin(),N,0.0f);

std::fill(vec.begin(),vec.end(),0.0f);

它可能也与 Boost.Assign 兼容,但您必须检查一下。

关于c++ - 填充 boost vector 或矩阵,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/798002/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com