21xrx.com
2024-11-10 07:05:10 Sunday
登录
文章检索 我的文章 写文章
C++如何创建动态数组
2023-07-12 03:16:50 深夜i     --     --
C++ 动态数组 创建

C++是一种广泛使用的编程语言,可以用来开发各种应用程序。其中一个常见的应用场景是创建动态数组。动态数组是指可以根据需要动态增加或减少大小的数组。

C++提供了多种方式来创建动态数组,下面我们来逐一介绍。

第一种方式是使用new关键字。下面的代码演示了如何创建一个包含5个整数的动态数组:


int* myArray = new int[5];

使用new关键字可以动态分配一块内存空间,并返回指向该内存空间的指针。在上面的代码中,我们动态分配了一块包含5个整数的空间,并把返回的指针赋值给指针变量myArray。

需要注意的是,在使用完动态数组后,必须使用delete关键字来释放已分配的内存空间,避免内存泄漏。下面的代码演示了如何释放上面分配的动态数组:


delete[] myArray;

第二种方式是使用std::vector容器。std::vector是C++标准库提供的一种容器,可以包含任意类型的数据,并可以动态调整大小。下面的代码演示了如何创建一个包含5个整数的vector:


std::vector<int> myVector(5);

在上面的代码中,我们创建了一个包含5个整数的vector,并将其赋值给变量myVector。

需要注意的是,在使用vector时无需手动释放内存空间,vector会自动管理内存空间。

第三种方式是使用unique_ptr智能指针。unique_ptr是C++11引入的一种智能指针,可以自动管理动态分配的内存空间。下面的代码演示了如何创建一个包含5个整数的动态数组:


std::unique_ptr<int[]> myArray(new int[5]);

在上面的代码中,我们使用unique_ptr创建了一个包含5个整数的动态数组,并将其赋值给变量myArray。需要注意的是,unique_ptr使用了模板类,要在唯一指针的类型参数中指定方括号,以表示它们指向的是一个整数数组。

与new关键字一样,unique_ptr默认在作用域结束时会自动释放内存空间。

总之,C++提供了多种方式来创建动态数组,您可以根据具体场景选择最适合的方式。无论使用哪种方式,在使用完动态数组后都要记得手动释放内存空间,以避免内存泄漏。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复