小编Pet*_*uff的帖子

使用C ++ 17编译本征需要_SILENCE_CXX17_NEGATORS_DEPRECATION_WARNING定义

我正在尝试分配一个稀疏矩阵的块并使它工作。似乎本征函数使用的函数已被弃用,我可以通过一些定义来修复它。但是,我可以确定是否应将这些定义添加到项目中,或等待更新的Eigen版本。你们可以就定义的副作用提出建议。

我写的程序看起来像这样

#include <Eigen/Sparse>

int main()
{
    Eigen::SparseMatrix<double> m(4, 4);

    m.block(0, 0, 2, 2) << 1, 2, 3, 4;
}
Run Code Online (Sandbox Code Playgroud)

这是警告:

1> d:\ eigen_3.3.4 \ eigen \ src \ core \ functors \ stlfunctors.h(87):错误C4996:'std :: unary_negate <_Fn>':警告STL4008:std :: not1(),std :: not2(),std :: unary_negate和std :: binary_negate在C ++ 17中已弃用。它们被std :: not_fn()取代。您可以定义_SILENCE_CXX17_NEGATORS_DEPRECATION_WARNING或_SILENCE_ALL_CXX17_DEPRECATION_WARNINGS以确认您已收到此警告。1> d:\ eigen_3.3.4 \ eigen \ src \ core \ functors \ stlfunctors.h(91):错误C4996:'std :: binary_negate <_Fn>':警告STL4008:std :: not1(),std :: not2(),std :: unary_negate和std :: binary_negate在C ++ 17中已弃用。它们被std :: not_fn()取代。您可以定义_SILENCE_CXX17_NEGATORS_DEPRECATION_WARNING或_SILENCE_ALL_CXX17_DEPRECATION_WARNINGS以确认您已收到此警告。1> d:

提前致谢!

c++ eigen c++17

4
推荐指数
1
解决办法
632
查看次数

标签 统计

c++ ×1

c++17 ×1

eigen ×1