请高手帮我解决一道关于c++的程序

来源:百度知道 编辑:UC知道 时间:2024/05/14 15:10:04
template<class AType>
class array
{
public:
array(int size);
~array()
{delete[]a;}
AType & operator[](int i);
private:
int length;
AType *a;
};
template<class AType>::array(int size)
{
register int i;
Length=size;
a=new AType[size];
if(!a)
{
cout<<"Can't allocate array\n";
exit(1);
}
for(i=0;i<size;i++)
a[i]=0;
}
template<class AType>
AType & array<AType>::operator[](int i)
{
if(i<0||i>Length-i)
{
cout<<"\nIndex value of";
cout<<i<<"is out-of-bound.\n";
exit(2);
}
return a[i];
}
将其放入array.h存盘.
#include<iostream.h>
#include"array.h"
#include<stdlib.h>
void main()
{
array<int>intob(10);
array<double>doubleob(5);

解决!!
template<class AType>
class array
{
public:
array(int size);
~array()
{delete[]a;}
AType & operator[](int i);
private:
int Length;
AType *a;
};
template<class AType>array<AType>::array(int size)
{
register int i;
Length=size;
a=new AType[size];
if(!a)
{
cout<<"Can't allocate array\n";
exit(1);
}
for(i=0;i<size;i++)
a[i]=0;
}
template<class AType>
AType & array<AType>::operator[](int i)
{
if(i<0||i>=Length)
{
cout<<"\nIndex value of";
cout<<i<<"is out-of-bound.\n";
exit(2);
}
return a[i];
}
//将其放入array.h存盘.
#include<iostream.h>
#include"array.h"
#include<stdlib.h>
void main()