题目是,要求用函数模板将数从小到大排序(int,long,float三种)
#include <iostream>
#include <string>
using namespace std;
template <typename T>
void sort(T a[]);
int main()
{
int a[5]={11,1,2,3,12};
long b[5]={3444,2555,46666,77777,-1222};
float c[5]={1.1,2.05,2.04,4.7651,1.22};
sort(a);
sort(b);
sort(c);
return 0;
}
void sort(T a[])
{
int i,j;
T t;
for(j=0;j<4;j++)
{
for(i=0;i<4-j;i++)
{
if(a[i]>a[i+1])
{
t=a[i];
a[i]=a[i+1];
a[i+1]=t;
}
}
}
cout<<"从小到大排序为:"<<endl;
for(i=0;i<5;i++)
{
cout<<a[i]<<endl;
}
cout<<endl;
}
错误是missing function header (old-style formal list?)……不知道哪里不对求解救TVT
#include <iostream>
#include <string>
using namespace std;
template <typename T>
void sort(T a[]);
int main()
{
int a[5]={11,1,2,3,12};
long b[5]={3444,2555,46666,77777,-1222};
float c[5]={1.1,2.05,2.04,4.7651,1.22};
sort(a);
sort(b);
sort(c);
return 0;
}
void sort(T a[])
{
int i,j;
T t;
for(j=0;j<4;j++)
{
for(i=0;i<4-j;i++)
{
if(a[i]>a[i+1])
{
t=a[i];
a[i]=a[i+1];
a[i+1]=t;
}
}
}
cout<<"从小到大排序为:"<<endl;
for(i=0;i<5;i++)
{
cout<<a[i]<<endl;
}
cout<<endl;
}
错误是missing function header (old-style formal list?)……不知道哪里不对求解救TVT
