CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  C/C++ >  C++ 语言

如何可以实现动态的数组呢?

楼主bigdaddy123(阿烂)2005-04-03 23:23:32 在 C/C++ / C++ 语言 提问

想输入一个数   n    
  使数组的大小为   n   并初始为   0  
  小弟实现不了  
  请帮帮小弟!!  
  问题点数:0、回复次数:9Top

1 楼bigdaddy123(阿烂)回复于 2005-04-03 23:28:44 得分 0

帮帮小弟啊!!Top

2 楼chunhai12(小海)回复于 2005-04-03 23:33:33 得分 0

#include   <iostream>  
  using   namespace   std;  
   
  int   main()  
  {  
          int   n;  
   
          cin   >>   n;  
   
          int   *ia   =   new   int[n]();  
   
          //…………  
   
          delete[]   ia;  
   
          return   0;  
  }Top

3 楼xxxdg(学习中)回复于 2005-04-03 23:34:26 得分 0

这个实现不了的话,也不敢用模板了,呵呵  
   
   
  char   *   MallocArray(int   n)  
  {  
          char   *   pArray   =   new   int   [n];  
          memset(pArray,0,n);  
          return   pArray;    
  }  
   
  void   FreeArray(char   *   pArray)  
  {  
          delete   []   pArray;  
  }Top

4 楼leogigi()回复于 2005-04-03 23:39:15 得分 0

数组还可以追加分配!~~~~Top

5 楼antter(JiangMiao)回复于 2005-04-04 07:01:46 得分 0

template<class   T>  
  class   dynarray  
  {  
  T*   m_data;  
  public:  
  dynarray(int   n)   {   m_data   =   new   T[n];memset(m_data,0,n*sizeof(T));}  
  ~dynarray()   {delete[]   m_data;   }  
  };  
  int   main(int   argc,   char*   argv[])  
  {  
  dynarray<char>   test(8);  
  return   0;  
  }Top

6 楼xjp6688(大平/要做必须最好)回复于 2005-04-04 07:42:15 得分 0

注意分配和释放Top

7 楼healer_kx(甘草(楼主揭贴吧,我们这些上班灌水的也不容易))回复于 2005-04-04 08:10:43 得分 0

boost::array<T>Top

8 楼pcboyxhy(-273.15℃)回复于 2005-04-04 08:21:20 得分 0

标准里还可以    
  int   i;  
  cin>>i;  
  int   data[i];  
  memset(data,   0,   sizeof(int)*i);Top

9 楼bluejugar(2046,那年我64.)回复于 2005-04-04 09:00:42 得分 0

#include   <iostream>  
   
  template<typename   T   =   T(),size_t   N   =   0>  
  class   Dynamic_Array2D  
  {  
  public:  
  Dynamic_Array2D()  
  {  
  for(int   i   =   0;   i   <   N;   ++i)  
  {  
  m_Container_[i]   =   T();  
  }  
  }  
   
  T&   operator[](size_t   n)  
                  {  
                                return   m_Container_[n];  
                  }  
  private:  
                  T   m_Container_[N];  
  };  
   
  int   main()  
  {  
  using   namespace   std;  
   
  Dynamic_Array2D<int,20>   obj;  
   
  cout<<obj[2]<<endl;  
   
  return   0;  
  }Top

相关问题

  • 如何实现动态二维数组?
  • 如何实现动态数组?
  • 如何实现动态多维数组
  • 如何动态实现控件数组?
  • C#中如何实现动态数组?
  • 如何实现动态开辟二维数组
  • java中如何实现二维(多维)动态数组.谢谢
  • 如何实现string 数组的动态改变大小?
  • MFC中如何实现动态增长的数组
  • 如何实现动态二维数组的

关键词

  • dynarray
  • parray
  • 实现
  • memset
  • delete
  • data
  • char

得分解答快速导航

  • 帖主:bigdaddy123

相关链接

  • C/C++ Blog
  • C/C++类图书
  • C/C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo