Вызов шаблонной фунции

Van111

T pow (int T, int n_)
{
    if (!n_)
        return 1;
    T x = x_ ;
    int n = n_;
    do
    {
        n--;
        x *= x;
    }while(n);
 
    if (n < 0)
        return 1 / x;
    else
        return  x;
}
как вызвать эту функцию, чтобы компилятор воспринял тип T как int ?
4 ответа

Van111

pow(5, 2);


Van111

pow(5, 2);
MVS 2010 пишет что так нельзя, а если вместо 5 подставит 5.0 то там всё нормально


Van111

namespace my
{
template<typename T>
T pow (T x_, int n_)
{
    if (!n_)
        return 1;
    T x = x_ ;
    int n = n_;
    do
    {
        n--;
        x *= x;
    }while(n);
 
    if (n < 0)
        return 1 / x;
    else
        return  x;
}
}
...
my::pow(5, 2);
T pow (int T, int n_)
wtf&


Van111

wtf&
извиняюсь, не заметил