特征::地图未被驯服?
Eigen::Map unamed?
在这里,我尝试使用Eigen
函数将随机值写入a
:
double *a = (double*)malloc(N*N*sizeof(double));
Map<Matrix<double, N, N, RowMajor> >m(a);
m = MatrixXd::Random(N,N);
是否可以只在一行中完成最后一部分(无需创建m
(?我在想象类似的东西
Map<Matrix<double, N, N, RowMajor> >(a) = MatrixXd::Random(N,N);
但是得到了
main.cpp:44:42: error: redefinition of 'a' with a different type: 'Map<Matrix<double, N, N, RowMajor> >' vs 'double *'
Map<Matrix<double, N, N, RowMajor> >(a) = MatrixXd::Random(N,N);
^
main.cpp:42:13: note: previous definition is here
double *a = (double*)malloc(N*N*sizeof(double));
^
1 error generated.
C++将忽略a
周围的()
,例如
Type (a) = expr;
你可以写
( Type(a) ) = expr;
或 C++11:
Type{a} = expr;
对于这种情况,您还可以使用静态Map
成员函数:
Matrix<double, N, N, RowMajor>::Map(a) = MatrixXd::Random(N,N);
或
Matrix<double, N, N, RowMajor>::Map(a).setRandom(); // size is specified by type
相关文章:
- 为什么不;名字在地图上是按顺序排列的吗
- 基于多个条件处理地图中的所有元素
- 如何声明特征矩阵,然后通过嵌套循环初始化它
- 在C++中将矢量转换为嵌套地图
- 特征::矩阵<双精度,1,3> 结构类型函数中的返回类型函数
- 有没有一种方法可以通过"typedef"为重新定义的基本类型定义特征和强制转换运算符
- 特征命名访问向量段
- 将特征矩阵的向量设置为0
- 特征:模板函数中矩阵的平面图
- basic_string的前导/尾部不区分空格的特征
- 替换基于地图的所有引用
- 如何区分地图中的 0 和 false?
- 特征 3 类的模板专用化
- 地图计数确实很重要,或者只是检查是否存在
- 特征 c++:复矩阵的面积双曲正切(atanh)
- 如何从地图中删除矢量对象
- 是否有任何C++功能可以对地图进行排序?
- C++ 中的特征向量计算
- 特征::地图未被驯服?
- 特征 - 从地图获取矩阵