D:\ZBY\CodeBase\eigen-3.4.0\Eigen\src\Core\MathFunctions.h:389: error: conflicting declaration of C function 'long long int std::abs(long long int)' EIGEN_USING_STD(abs); ^
时间: 2024-01-24 09:18:37 浏览: 23
leetcode答案-zby-leetcode-python:zby的Python版答案
这个错误是因为在你的代码中调用了标准库函数 `abs`,但是 Eigen 库中也定义了一个同名函数,导致冲突。解决方法有两个:
1. 使用 `std::abs` 而不是直接调用 `abs` 函数,这样可以明确使用标准库中的函数。
2. 在包含 Eigen 头文件之前,加入宏定义 `#define EIGEN_DONT_ALIGN_STATICALLY`,这样可以禁用 Eigen 中的一些静态对齐优化,避免与标准库冲突。
你可以根据具体情况选择其中一种方法进行修改。
阅读全文