C++中怎么重定义数组大小

来源:百度知道 编辑:UC知道 时间:2024/06/10 15:49:45
比如:

我在前面定义: #define Max 100

如果我在后面想重新定义数组的大小,是用户自己输入一个n,把数组的大小变成n,该怎么说明?最好具体点。

最好还能举个例。谢谢。

在C++中则可以使用模板 技术定义一个函数,比如:

template <class T>
int getArrayLen(T& array)
{
return (sizeof(array) / sizeof(array[0]));
}

int *a;
int n;

cin>>n;

a=new int[n];//新建一个长度为n的整型数组

a[0]=...

...
...
delete[] a;//删除数组a

最简单办法就是,new一个新的指定大小的数组,然后把旧的数据复制过去,然后删除旧的数组

你那是宏定义啊 就是100用Max代替了。这不是数组啊···如果要重新定义宏的话就想
#undef Max
然后在重新定义一次就行了 啊