分配一个新的布尔数组指针

问题描述 投票:-2回答:3

我很好奇您如何在c ++中分配一个新的布尔数组指针。我环顾四周,但找不到与我学会分配新指针相似的东西。

分配一个我已经学会做的新的int指针

int * intPointer = new int;

布尔数组的正确方法是什么?我已经尝试过:

bool * boolArr[] = new [] bool;

但是我得到了错误“'['标记之前的预期类型说明符

c++ arrays pointers
3个回答
7
投票

如果要动态分配布尔数组,则需要这样做

bool *arr = new bool[10];

您必须指定数组大小。

静态分配的语法是

bool arr[10];

2
投票

如果要动态分配布尔数组,则需要这样做

std::vector<bool> arr;
arr.reserve(10);

您不必指定大小。

静态分配的语法是

std::array<bool, 10> arr;

0
投票

Dynamically分配大小为n的布尔数组

bool* arr = new bool[n];

静态分配。

bool arr[n];

动态数组是通过堆内存分配的,这对于数组大小可能很大的情况更好。

理想情况下,您还应该使用]手动删除动态分配的数组空间>>

delete[] arr

在临时使用情况下,删除分配的空间可能是可选的,但绝对鼓励您将其作为专业实践。

© www.soinside.com 2019 - 2024. All rights reserved.