szablon funkcji

0

Mam taki kod:

 #include<iostream>
using namespace std;

template<class T>
void swap(T &a, T &b)
{
     T temp;
     temp=a;
     a=b;
     b=temp;
}



int main(){
    
    int a=10, b=20;
    double c=100, d=200;
    
    cout << a << " " << b << endl;
    swap(a,b);
    cout << a << " " << b << endl;
    cout << c << " " << d << endl;
    swap(c,d);
    cout << c << " " << d << endl;
    
        
    system("pause");
    return 0;
}

Nie mam pojęcia czemu od nie działa, przecież funkcji swap otrzymuje argumenty takiego typu jakie są dane podczas wywołania funkcji, wiec raz typu int a drugi raz typu double, lecz nie działa, mam nadzieję że ktoś powie mi czemu to nie działa ;)

0

Zmień nazwę funkcji swap, albo nie używaj "using namespace std;", w bibliotece standardowej jest funkcja o tej samej nazwie. Dodatkowo dodaj stdlib, żeby użyć funkcji system.

0

Dzieki;)

1 użytkowników online, w tym zalogowanych: 0, gości: 1