Ниже приведены строки из "C++ язык программирования"C++ шаблон функции перегрузки
template<class T > T sqrt(T);
template<class T > complex<T> sqrt(complex<T>);
double sqrt(double);
void f(complex<double> z)
{
s q r t (2); // sqrt<int>(int)
sqrt(2.0) ; // sqrt(double)
sqrt(z) ; // sqrt<double>(complex<double>)
}
Я не понимаю, почему SQRT (г); звонки sqrt<double>(complex<double>)
может любой корпус объясните пожалуйста.
Автор говорит, T sqrt<complex<T>>
более специализированы, чем T sqrt <T>
но есть отдельная декларация template<class T > complex<T> sqrt(complex<T>);
почему бы не использовать это?
Извините, ребята, я не понял sqrt (комплекс ) представляет собой комплекс sqrt <комплекс > –
yesraaj
2008-10-20 10:58:08