cpp中new一个int数组的语法
时间: 2023-12-03 10:45:02 浏览: 116
在 C++ 中,你可以使用以下语法来动态分配一个 int 数组:
```
int* array = new int[size];
```
其中,`size` 是数组的大小。这将在堆上分配一个大小为 `size * sizeof(int)` 字节的连续内存块,并返回一个指向该内存块的指针。你可以通过索引访问数组中的元素,例如:
```
array[0] = 1;
array[1] = 2;
```
记得在不需要使用时,使用 `delete[]` 关键字释放内存,例如:
```
delete[] array;
```
相关问题
new数组
在 C++ 中,使用 `new` 关键字可以动态地分配内存空间,其语法为:
```cpp
type *pointer_name = new type[size];
```
其中,`type` 表示要分配的数据类型,`size` 表示要分配的元素数量,`pointer_name` 表示指向新分配的内存空间的指针。
例如,可以使用以下语句动态地分配一个包含 10 个整数的数组:
```cpp
int *my_array = new int[10];
```
在使用完动态分配的内存空间后,需要使用 `delete` 关键字释放这些空间,其语法为:
```cpp
delete[] pointer_name;
```
其中,`pointer_name` 表示要释放的内存空间的指针。例如,可以使用以下语句释放上面动态分配的数组:
```cpp
delete[] my_array;
```
new一个存放map的数组
你可以使用以下语法来创建一个存放map的数组:
```cpp
#include <iostream>
#include <map>
#include <array>
int main() {
std::array<std::map<int, std::string>, 3> myArray; // 创建一个大小为3,每个元素都是map<int, string>类型的数组
myArray[0][1] = "Hello";
myArray[0][2] = "World";
myArray[1][3] = "C++";
myArray[2][4] = "Programming";
// 遍历数组并输出每个map中的元素
for (const auto& myMap : myArray) {
for (const auto& pair : myMap) {
std::cout << pair.first << ": " << pair.second << std::endl;
}
}
return 0;
}
```
这个程序创建了一个大小为3的数组,每个元素都是一个`map<int, string>`类型的对象。你可以使用下标操作符`[]`来访问数组中的元素,然后使用`[]`或`insert`方法向map中添加元素。在上面的示例中,我们向第一个map中添加了两个元素,向第二个map中添加了一个元素,向第三个map中添加了一个元素。最后,我们遍历整个数组并输出每个map中的元素。
阅读全文