Легкий пример по шаблонам классов

  • Автор темы -
  • Дата начала

Гость
#1
Всем доброго времени суток. У меня такая проблема:
Написал шаблон класса, но он не работает для типов double и float. Задача заключается в том чтобы написать шаблон класса massiv в котором хранится одномерный массив, есть конструктор, функция сортировки и показа отсортированного массива.
Все работает, но только для целых чисел, а для остальных типов не работает...
Вот код:
Код:
#include <iostream.h>
#include <math.h>
#include <stdlib.h>

template < class Tip >
class Massiv
{
Tip *A,n;
public:
Massiv ()
{
cout<<"Vvedite col-vo elementov"<<endl;
cin>>n;
A=new Tip[n];
cout<<"Vvodite elementi"<<endl;
for(int i=0; i<n;i++)
cin>>A[i];
}

void Show()
{
for(int i=0;i<n;i++)
cout<<A[i]<<" ";
cout<<endl;
}
void Sort()
{
int i;
int j;
Tip tmp;

for(i = 0; i <= n-1; i++)
{
for(j = 0; j <= n-2-i; j++)
{
if( A[j]>A[j+1] )
{
tmp = A[j];
A[j] = A[j+1];
A[j+1] = tmp;
}
}
}
for(i=0;i<n;i++)
cout<<A[i]<<" ";
cout<<endl;
}
};

void main()
{
cout<<"Celie: "<<endl;
Massiv< int > I;
cout<<endl;
cout<<"Vechcestvennie: "<<endl;
Massiv< float > D;
cout<<endl;
cout<<"Dlia int: "<<endl;
I.Sort();
cout<<"Dlia double"<<endl;
D.Sort();

}
 
S

Sekt

Гость
#2
Вы этот вопрос задавали на 3-ех форумах.И ответ был вам предоставлен.