请考虑下面的代码:获取价值和参考。歧义。模板功能
template<typename Body>
Body solve(Body a, Body b){
Body zero(0);
return zero;
}
template<typename Body, Body& zero>
Body solve(Body a, Body b){
return zero;
}
complex<double> zero_complex(0);
int main() {
complex<double> c1(1,2);
complex<double> c2(3,4);
solve<complex<double>, zero_complex> (c1,c2);
return 0;
}
我怎样才能获得通过参考complex<double>
?
当我重载一个函数(见下文)时,我得到一个模糊性错误。
template<typename Body>
Body solve(Body& a, Body& b){
Body zero(0);
return zero;
}
我不太明白这一点。你想在上面的代码中加入这个重载,并且提出'ambigious blablabla'? –
试图提高可读性 – DuncanKinnear