如何在不使用abs()或循环(if/else)的情况下构建绝对函数,只需使用运算符(C++)

-2 c++ math

如果您能建议并分享如何在不使用abs()或循环(if/else)的情况下构建绝对函数,只需使用运算符(C++),我将不胜感激

Bat*_*eba 5

template<typename N>
N abs(const N& n)
{
    const N arr[2] = {n, -n};
    return arr[n < 0];
}
Run Code Online (Sandbox Code Playgroud)

是一种方式。而且它也不会转储管道。