# include & ltiostream & gt
# include & lt字符串& gt
使用命名空間std
模板& ltT類& gt
MyArray級
{
公共:
t *數據;
int len
公共:
緬甸()
{
數據=空;
len = 0;
}
~緬甸()
{
刪除[]數據;
}
T & amp運算符[](int index);
空推(T d);
};
模板& ltT類& gt
T & ampMyArray & ltT & gt*運算符[](整數索引)
{
if(index & lt;0 | | index & gt(len-1))
{
cout & lt& lt"下標錯誤!"& lt& ltendl
退出(1);
}
返回數據[索引];
}
模板& ltT類& gt
void MyArray & ltT & gt*推(總日數)
{
T *pdata =數據;
data = new T[len+1];
if(pdata!=空)
{
for(int I = 0;我& ltleni++)
{
data[I]= pdata[I];
}
刪除[]pdata;
pdata = NULL
}
data[len]= d;
len++;
}
結構學生
{
字符串名稱;
int age
};
//測試代碼
int main(int argc,char* argv[])
{
MyArray & ltint & gta;//塑料測試;
a .推送(11);
a .推送(22);
a . push(33);
a .推送(55);
a[0]= 44;
for(int I = 0;我& lt4;i++)
cout & lt& lta[I]& lt;& ltendl
MyArray & lt結構學生& gt斯圖;//自定義類型測試;
for(I = 0;我& lt2;i++)
{
struct學生stu 1;
cout & lt& lt"輸入學生的信息:" & lt& ltendl
CIN & gt;& gtstu 1 . name & gt;& gtstu 1 . age;
stu . push(stu 1);
}
for(I = 0;我& lt2;i++)
cout & lt& lt斯圖[我]。名稱& lt& lt" " " & lt& lt斯圖[我]。年齡& lt& ltendl
返回0;
}
//期待多交流,呵呵。。。好運:作者sx_liang