1

我在头文件中定义一些常量特征(eigen.tuxfamily.org)向量时遇到问题,但显然它更多的是编译器问题而不是特定于特征的问题..

在头文件中定义:

const double[] hardcodedData = {1,2,3};
const Vector3d myConstVector(hardcodedData);

通过 cython/distutils(我用于测试)使用 Microsoft VC2010 完美运行。包含头文件后,我可以从每个函数/方法/任何内容访问 myConstVectory 并将其用于计算..

使用相同的代码:

Microsoft (R) C/C++ 优化编译器版本 17.00.50727.1 for x64

由有限元软件 ABAQUS 6.13-2 调用,

每个 const Vector 都用零初始化!直到现在,我发现除了使用这样的东西之外没有其他解决方法:

const Vector3d myConstVector()
{
    const static Vector3d vec(hardcodedData);
    return vec;
}

这种解决方法是可以的,但不是我真正打算做的..它也有一些开销。

是否有一个干净的解决方案,让“硬编码”选项运行?提前谢谢!

4

0 回答 0