我在头文件中定义一些常量特征(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;
}
这种解决方法是可以的,但不是我真正打算做的..它也有一些开销。
是否有一个干净的解决方案,让“硬编码”选项运行?提前谢谢!