C++ 自定义动态数组模板_C/C++语言_黑客防线网安服务器维护基地--Powered by WWW.RONGSEN.COM.CN

C++ 自定义动态数组模板

作者:黑客防线网安C/C++教程基地 来源:黑客防线网安C/C++教程基地 浏览次数:0

本篇关键词:模板动态定义data
黑客防线网安网讯:  #include "stdafx.h"  #include <iostream>  using namespace std;  template <class T>  class MyArray  {  int len;  public:  T *data;  MyArray()  {  data ...
  #include "stdafx.h"
  #include <iostream>
  using namespace std;
  template <class T>
  class MyArray
  {
  int len;
  public:
  T *data;
  MyArray()
  {
  data = NULL;
  len = 0;
  }
  ~MyArray()
  {
  delete[] data;
  }
  T& operator [](int index);
  void push(T d);
  };
  template <class T>
  T& MyArray<T>::operator [](int index)
  {
  if(index<0||index>(len-1))
  {
  cout<<"Bad subscript!"<<endl;
  exit(1);
  }
  return data[index];
  }
  template <class T>
  void MyArray<T>::push(T d)
  {
  T *pdata = data;
  data = new T[len + 1];
  if(pdata != NULL)
  {
  for(int i = 0 ; i < len ; i++)
  {
  data[i] = pdata[i];
  }
  delete[] pdata;
  }
  data[len] = d;
  len++;
  }
  //测试代码
  int main(int argc, char* argv[])
  {
  MyArray<int>  a;
  a.push(11);
  a.push(22);
  a.push(33);
  a.push(55);
  a[0]=44;
  cout<<a[0]<<endl<<a[1]<<endl<<a[2]<<endl<<a[3]<<endl;
  return 0;
  }
    黑客防线网安服务器维护方案本篇连接:http://www.rongsen.com.cn/show-15014-1.html
网站维护教程更新时间:2012-04-04 22:48:21  【打印此页】  【关闭
我要申请本站N点 | 黑客防线官网 |  
专业服务器维护及网站维护手工安全搭建环境,网站安全加固服务。黑客防线网安服务器维护基地招商进行中!QQ:29769479

footer  footer  footer  footer