对';min(uint8,int)和x27; 我试图用GCC编译一些C++,我收到的错误是: /usr/share/arduino/libraries/i2cdevlib/Arduino/MPU9150/MPU9150_9Axis_MotionApps41.h: In member function 'uint8_t MPU9150::dmpInitialize()': /usr/share/arduino/libraries/i2cdevlib/Arduino/MPU9150/MPU9150_9Axis_MotionApps41.h:605:56: error: no matching function for call to 'min(uint8_t&, int)' getFIFOBytes(fifoBuffer, min(fifoCount, 128)); // safeguard only 128 bytes ^
为什么没有定义对';min(uint8,int)和x27; 我试图用GCC编译一些C++,我收到的错误是: /usr/share/arduino/libraries/i2cdevlib/Arduino/MPU9150/MPU9150_9Axis_MotionApps41.h: In member function 'uint8_t MPU9150::dmpInitialize()': /usr/share/arduino/libraries/i2cdevlib/Arduino/MPU9150/MPU9150_9Axis_MotionApps41.h:605:56: error: no matching function for call to 'min(uint8_t&, int)' getFIFOBytes(fifoBuffer, min(fifoCount, 128)); // safeguard only 128 bytes ^,c++,C++,为什么没有定义min(uint8\u t&,int)?这不是一个标准的数学函数吗 假设我在某个地方缺少include或namespace声明,并且不应该自己定义此函数,对吗?传递给std::min的参数不同:一个是uint8\t,另一个是int std::min的功能类型如下: template< class T > const T& min( const T& a, const T& b ); 你的错误信息说明了一切 错误:调用“min(uint8\u
min(uint8\u t&,int)
?这不是一个标准的数学函数吗
假设我在某个地方缺少include或namespace声明,并且不应该自己定义此函数,对吗?传递给
std::min
的参数不同:一个是uint8\t
,另一个是int
std::min
的功能类型如下:
template< class T >
const T& min( const T& a, const T& b );
你的错误信息说明了一切
错误:调用“min(uint8\u t&,int)”时没有匹配的函数
编译器无法解析为正确的专门化,因为参数的类型不一致(匹配)
uint8\u t
参数fifoCount
静态上溯到int
中的std::min(静态上溯(fifoCount),128)std::min(fifoCount,128)
std::min<int>(fifoCount, 128);