确切的错误信息
error: no matching function for call to ‘clamp<unsigned char>(div_t)’
return clamp<T>(inv(div(pow(inv(src),2),dst)));
~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
有问题的代码
template<class T>
inline T cfFreeze(T src, T dst) {
using namespace Arithmetic;
if(dst == zeroValue<T>())
return zeroValue<T>();
return clamp<T>(inv(div(pow(inv(src),2),dst)));
}
我该如何解决这个问题?代码看起来是对的,但是不知为何好像没有匹配的函数。我对编程还很陌生。
最佳答案
如果您尝试使用标准库中的一个,请确保您使用的是 c++ 17 并执行 std::clamp() 而不仅仅是 clamp。
关于c++ - 我正在尝试使用 No matching function for call to 解决问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50780480/