Avatar ·

如何使用new在C++中声明二维动态数组?

你好!我刚开始学习C++,遇到了一个问题。需要创建一个二维数组,其大小只在程序运行时才知道。我知道如何声明静态二维数组:`int arr[3][4];`,但当我尝试让大小成为变量时,编译器报错。 我试过这样的代码: ```cpp int rows = 5, cols = 10; int arr[rows][cols]; // 错误!需要编译时常量 ``` 我查阅了动态内存,了解到需要使用`new`。但如何正确为二维数组分配内存?我在网上看到几种不同的方法。有人使用指针数组,有人分配一个大的内存块。 请写出使用`new`创建二维数组的正确且可靠的方法。特别感兴趣的是: 1. 如何分配内存。 2. 如何访问元素。 3. 如何正确释放内存(避免泄漏)。 4. 在现代C++中哪种方法被认为是最佳实践?