首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >动态分配随机特征VectorXd

动态分配随机特征VectorXd
EN

Stack Overflow用户
提问于 2016-04-05 23:09:53
回答 1查看 587关注 0票数 1

在本征中分配随机VectorXd的步骤如下:

代码语言:javascript
运行
复制
VectorXd z = VectorXd::Random(10000);

然而,我不知道如何动态地分配相同的向量:

代码语言:javascript
运行
复制
VectorXd* z = new VectorXd::Random(10000); // error: expected type-specifier

因为VectorXdtypedef。我可以使用另一个构造函数,但是我怀疑这是不可理解的,而且效率很低:

代码语言:javascript
运行
复制
VectorXd* z = new VectorXd(VectorXd::Random(10000)); // compiles
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-04-06 06:47:50

Eigen::VectorXd是一个容器,它将动态地为自己的内容(元素数组)分配所需的内存,因此以下所有内容都可以工作:

代码语言:javascript
运行
复制
VectorXd* z1 = new VectorXd(VectorXd::Random(10)); // compiles
std::cout << "z1:\n" << z1->transpose() << "\n\n";

VectorXd* z2 = new VectorXd(); // also compiles
z2->setRandom(10);
std::cout << "z2:\n" << z2->transpose() << "\n\n";

VectorXd* z3 = new VectorXd(); // compiles as well
*z3 = VectorXd::Random(10);
std::cout << "z3:\n" << z3->transpose() << "\n\n";

大多数特征对象都是这样,但其大小不动态的对象除外(例如Eigen::Vector3d)。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36438666

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档