运行程序时,我当前正在检索以下特征断言:
test_engine:/usr/include/eigen3/eigen/src/core/densestorage.h:128:eigen::internal::plain_array::plain_array()[with T=double;int Size=16;int MatrixOrArrayOptions=0]:断言(reinterpret_cast(eigen_unaligned_array_assert_workaround_gcc47(array))&(31))==0&&“此处解释了此断言:”“http://eigen.tuxfamily.org/dox-devel/group__topicunalignedarrayassert.html”“****阅读此网页!!!****”失败。
导致此断言的确切代码行是:
std::shared_ptr<Reference> ptr_tmp = std::make_shared<ReferenceLinCart>(cart_traj);
其中
struct Reference {
EIGEN_MAKE_ALIGNED_OPERATOR_NEW
virtual ~Reference() {}
}
struct ReferenceLinCart : Reference {
Eigen::Transform<double, 3, Eigen::Affine> T_start;
Eigen::Transform<double, 3, Eigen::Affine> T_goal;
EIGEN_MAKE_ALIGNED_OPERATOR_NEW
};
描述中的链接为我提供了有关静态大小结构成员的信息,这就是我添加
使用的G++编译标志为:-march=native-funroll-loops-std=C++11-ofast-wall
不幸的是,我仍然在检索相同的运行时断言。有什么建议怎么摆脱这个吗?
这是因为