c++ - 我正在尝试使用 No matching function for call to 解决问题

标签 c++ function qt

确切的错误信息

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/

相关文章:

c++ - 除非有提示,否则我的项目如何不提示 Unresolved 独立性?

python - 删除字符串/单词的方法

c++ - 使用 vlc-qt 拉伸(stretch)视频播放器?

c# - 如何使用 Mono (Linux) 显示系统托盘图标?

c++ - Qt/C++ : Is there a way to automatically register meta types?

c++ - 使用 unordered_map 分配器的非默认构造函数

c++ - boost 库问题

c++ - 给定以弧度为单位的距离和角度,获取绕点旋转的物体的 X、Y 位置的函数?

c - 为什么函数不应该返回本地数组?

c - 无法在c函数中使用int *的值