使用new创建动态数组

#数组名与指针之区别#

在cpp中,如果只需要一个值,那么使用一个简单变量,对于管理小型数据对象,这样更为简单。

然而,在大型数据(数组,字符串,结构等),我们更多的使用new:

        例如,编写一个程序,是否需要数组取决于用户提供给我们的信息。一种方式是我们通过声明来创立数组,在编译时,为它分配内存空间。不管程序是否结束,是否使用数组,数组都在那,都占用内存。这种在编译的时候给数组分配内存空间被称为静态联编,明显的,这种方式在处理大量数据时,不那么好。

        因此我们一般选择使用new来创建数组,在运行阶段需要数组,我们则创建它,不需要时,就不创建。我们通过这种方式,还可以在程序运行的时候选择数组的长度。与上文对应的,这个就叫动态联编。数组是在程序运行的时候创建的,这种数组叫做动态数组。

        ok,接下来让我们解决两个问题:

1.使用new创建动态数组

在C++中,创建动态数组很简单,只需要将元素的类型与数目告诉new即可。在类型名后加上方括号,包含元素数目。eg.(创建10个int的数组):

int* psome = new int[10];//创建10个元素的动态数组

此处例子中,new运算符返回第一个元素的地址。该地址赋值给指针psome。

与C语言的malloc与free函数类似,在使用new之后,我们要将分配给new的内存释放,这个时候我们

你可能感兴趣的:(c++)