#include <iostream.h>
class CArray
{
private:
int nSizeofInt; //整型数组的大小
int nNumofInt; //整型数组中实际存放的元素个数
int nSizeofFloat; //浮点数组的大小
int nNumofFloat; //浮点数组中实际存放的元素个数
int *pInt; //指向整型数组,动态分配内存空间
float *pFloat; //指向浮点数组,动态分配内存空间
public:
CArray(int nIntSize=100,int nFloatSize=200)
{
pInt=new int[nIntSize];
pFloat=new float[nFloatSize];
nSizeofInt=nIntSize;
nSizeofFloat=nFloatSize;
nNumofInt=0;
nNumofFloat=0;
}
void put(int n) //将n加入到整型数组中
{
if(nNumofInt<nSizeofInt)
{
pInt[nNumofInt]=n;
nNumofInt+=1;
}
}
void putf(float x) //将x加入到浮点数组中
{
if(nNumofFloat<nSizeofFloat)
{
pFloat[nNumofFloat]=x;
nNumofFloat+=1;
}
}
int getInt(int index) //取整型数组中第index个元素,index从0开始
{
return pInt[index];
}
float getFloat(int index) //取浮点数组中第index个元素,index从0开始
{
return pFloat[index];
}
~CArray() //析构,释放动态分配的空间
{
delete [100]pInt;
delete [200]pFloat;
}
void print() //分别输出整型数组合浮点数组中的所有元素
{
cout<<"/n整型数组大小 "<<nNumofInt;
if(nNumofInt>0)
{
cout<<" 输出数组元素:"<<endl;
}
for(int i=0;i<nNumofInt;i++)
{
cout<<"["<<pInt[i]<<"] ";
}
cout<<"/n/n浮点数组大小 "<<nNumofFloat;
if(nNumofFloat>0)
{
cout<<" 输出浮点数组元素:"<<endl;
}
for(i=0;i<nNumofFloat;i++)
{
cout<<"["<<pFloat[i]<<"] ";
}
cout<<endl;
}
};
void main()
{
CArray A1;
A1.put(3);
A1.put(34);
cout<<A1.getInt(1)<<endl;
A1.putf(4.5);
A1.putf(2.5);
cout<<A1.getFloat(0)<<endl;
A1.print();
}