如何定义一维动态数组?

leexiao 2003-10-20 06:02:13
我想定义一下数组a[x](x为变量,在程序运行中输入),但被告知数组大小就为常数。
请问怎么解决,
...全文
125 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
GeoPhoenix 2003-10-21
  • 打赏
  • 举报
回复
修改一下
template <class T>
class mine
{
T * a;
mine()
{
a = NULL;
}
mine(int maxlen)
{
a=new T[maxlen];

}
~mine()
{
if(a !=NULL)
delete [] a;
}




};
勉励前行 2003-10-21
  • 打赏
  • 举报
回复
定義一個数组a[x](x为变量,在程序运行中输入),

std::vector<int> a(x); //用起來太方便了。
或者:int *a = new int[x] ; //可要記得這句: delete [] a ;
//在C++中,最好別用malloc。DynamicArray是VCL中的一個類,沒vector好用。

ssbull 2003-10-21
  • 打赏
  • 举报
回复
用malloc()来分配也可以

int *ai;
(int*)malloc(sizeof(int)*var);//var就是你输入的变量
BoyMgl 2003-10-21
  • 打赏
  • 举报
回复
int * a = new int[var];
OK!
BoyMgl 2003-10-21
  • 打赏
  • 举报
回复
int * a = new int[var];
OK!
firestars 2003-10-20
  • 打赏
  • 举报
回复
写一个模板类吧,
template <class T>
class mine
{
T * a;

mine(int maxlen=10)
{
a=new T[];

}



}
pp616 2003-10-20
  • 打赏
  • 举报
回复
用calloc就好了。
leexiao 2003-10-20
  • 打赏
  • 举报
回复
在我的程序后面用到了:bbb为double型

memcpy((void *)mxGetPr(S), (void *)bbb, sizeof(bbb));

请问应该怎么做?
wjlsmail 2003-10-20
  • 打赏
  • 举报
回复
// 试试 :
DynamicArray<int> arrayOfInt;
int i ;
arrayOfInt.Length = 10;
for (i = 0 ; i < 9 ; i ++)
{
arrayOfInt[i] = i ;
Caption = IntToStr(arrayOfInt[i]) ;
Sleep(1000) ;
}
arrayOfInt.Length = 0;

13,824

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧